jQuery动态效果显示人物结构关系图的方法

2020-05-22 17:07:54易采站长站整理

},

newAppendGuest:function(i,className,name,w,h,r){
var host = $(i).html();
var guest = $(".guest").html();
var box = $("#"+this.id);
var that = this;
var next=0;
for(var i=0; i<this.array.length; i++){
if(host == this.array[i].name){
for(var j=0;j<this.array[i].friend.length; j++){
if(guest !== this.array[i].friend[j].name){
next++;
var guests ="<span class='"+className+"'>"+this.array[i].friend[j][name]+"</span>";
$(guests).appendTo(box).css({
left:that.setQuestPose(this.array[i].friend.length,r,next,w,h,that.angle).left,
top:that.setQuestPose(this.array[i].friend.length,r,next,w,h,that.angle).top
}).attr("angle",that.angle+next/this.array[i].friend.length).hide().fadeIn(1000);
}
}
}
}
},

moveHost:function(i){
var hLeft = parseInt($(".host").css("left")) + this.hostW/2;
var hTop = parseInt($(".host").css("top")) + this.hostH/2;
var gLeft = parseInt($(i).css("left")) + this.guestW/2;
var gTop = parseInt($(i).css("top")) + this.guestH/2;
var l = gLeft - hLeft;
var t = gTop - hTop;
var left = (hLeft - l - this.guestW/2)+"px";
var top = (hTop - t - this.guestH/2)+"px";
this.animate(".host",left,top);
},
moveRelationship:function(i){
var hLeft = parseInt($(".host").css("left")) + this.hostW/2;;
var hTop = parseInt($(".host").css("top")) + this.hostH/2;
var gLeft = parseInt($(".relationship").css("left")) + this.relationW/2;
var gTop = parseInt($(".relationship").css("top")) + this.relationH/2;
var l = gLeft - hLeft;
var t = gTop - hTop;
var left = (hLeft - l - this.relationW/2)+"px";
var top = (hTop - t - this.relationH/2)+"px";
this.animate(".relationship",left,top);
},
moveQuest:function(i){
var left = $(".host").css("left");
var top = $(".host").css("top");
this.animate(i,left,top);
},
delect:function(n){
$(".guest").slice(0,n).remove();
$(".guest").slice(1).remove();
$(".relationship").slice(0,n).remove();
$(".relationship").slice(1).remove();
},
animate:function(i,left,top){
$(i).animate({
left:left,
top:top
},500);
},
changeClass:function(){
var that =this;
$(".guest").addClass("abcdef").removeClass("guest");
$(".host").addClass("guest").removeClass("host").attr("angle",that.angle);
$(".abcdef").addClass("host").removeClass("abcdef").attr("angle",null);
}
}
$(document).ready(function(){
relation.init(relationName,0)
})
</script>
</head>
<body>
<div id="box"></div>
</body>
</html>

希望本文所述对大家的jQuery程序设计有所帮助。