我有一個引導模式彈出,工程巨大的,如果該網頁是不是在iframe中,像這樣:引導模式彈出忽略滾動位置,如果在IFRAME
https://jgroups-dev.herokuapp.com/(點擊查找組,然後單擊電子郵件按鈕)
然而,當它是一個iframe中的模式彈出錨iframe的頂部,完全無視用戶的滾動位置:
http://www.yourjourney.tv/connect/j-group-catalogue/
要嘗試破解解決這個問題,我ATTE根據iframe中的滾動位置手動設置模式彈出窗口的頂級屬性,但是$(window).scrollTop()和其他變體都會從iframe中返回0或40。
$('.send-email-modal').modal();
setTimeout(function() {
if(inIframe()) {
var emailModal = $('.send-email-modal .modal-dialog');
var win = $(window);
var offset1 = win.scrollTop();
var offset2 = document.documentElement.scrollTop || document.body.scrollTop;
console.log('offset1: ' + offset1);
console.log('offset2: ' + offset2);
var positionWindow = (offset1 + (win.height()/2)) - (emailModal.height()/2);
console.log('win.height(): ' + win.height());
console.log('emailModal.height(): ' + emailModal.height());
console.log('positionWindow: ' + positionWindow);
emailModal.css({ 'top': positionWindow });
}
}, 500);
這裏是控制檯輸出:
offset1: 40
main.js:54 offset2: 40
main.js:56 win.height(): 27037
main.js:58 emailModal.height(): 426
main.js:59 positionWindow: 13345.5
如果我無法檢索多遠下用戶滾動從代碼的iframe中的iframe,那我也沒有能夠有機會正確定位自舉模式彈出窗口。非常感謝,我遇到了這一塊磚牆...
給誰給我-1,得到了生命。 – Justin