我有几个 div 使用端点连接彼此连接。当我进行放大或缩小时,我需要重新绘制所有 UI 组件。UI 组件是使用 jsPlumb 库(基于 jquery/javascript)绘制的。jsplumb 中有一种方法可以强制重绘,但它并没有按照我想要的方式工作。这就是我想要做的。
$("div#explanation .plus").click(function(){
jsPlumb.repaintEverything();
var strongFont = parseFloat($("div.window strong").css('font-size'));
var newStrongFont = strongFont + 2;
$("div.window ").animate({
'height':'+=20px', 'width':'+=20px'
},"medium");
$("div.window strong").animate({
fontSize:newStrongFont
},"medium");
//This is not working
jsPlumb.repaintEverything();
jsPlumb.repaintEverything();
//I am calling here another function to repaint the div windows one by one
repaintWindows();
});
var repaintWindows = function(){
var jjl;
for(jjl=1;jjl<=xmlLength;jjl++)
{
var windo = "window"+jjl;
//alert("Window is ::"+windo);
jsPlumb.repaint(windo);
alert("Window is ::"+windo);
//_addEndpoints(wind, ["LeftMiddle", "BottomCenter"], ["TopCenter", "RightMiddle"]);
}
alert("the value of jjl is ::"+jjl+" \nThe value of xmlLength is::"+xmlLength);
};
这里的问题是如果我删除
//alert("Window is ::"+windo);
从 for 循环的 repaintWindows 方法中,窗口在下一个调用循环期间被重新绘制。我希望重绘同时工作。如果我保持警报,那么它会同时重新绘制窗口。同样,最后我不希望那里有任何警报。有人可以告诉我我哪里出错了。任何帮助表示赞赏。谢谢!