我正在開發iPad應用程序,因爲有超過6個iframe可用。完全加載頁面後,頁面滾動到中間的某個位置。因此,我決定讓頁面scrolltop寫入如下JavaScript代碼:更好的方法來查找頁面上的所有iframe
$(document).ready(function() {
try {
var iframecompleted = [];
$("iframe[id*='iframe']").each(function(eli, el) {
$(this).bind("load", iframeinit);
});
function iframeinit() {
iframecompleted.push($(this).id);
$(this).unbind("load", iframeinit);
}
var timer = setInterval(function() {
if ($("iframe[id*='iframe']").length == iframecompleted.length) {
clearInterval(timer);
$('html, body').animate({
scrollTop: 0
}, 500);
if (FrameID != "") {
var j = 0;
var ss = FrameID.split(",")
for (j = 0; j < ss.length; j++) {
var collPanel = $find("pane" + ss[j]);
if (collPanel != null)
collPanel.set_Collapsed(true);
}
FrameID = "";
}
}
}, 10);
}
catch (e) {
alert(e);
}
});
}
我想找到一個更好的方法來實現這個任務。你的想法更受歡迎。
什麼'FrameID'?此外,您的代碼可以輕鬆優化:如果您只使用iframecompleted進行計數,請不要使用數組 - 請使用數字。你的iframe選擇器可以被緩存,爲什麼你要在'$('html,body')'而不是'$(body)'上調用'animate'? – Zirak