正如前言要確保我清楚,我不希望div在頁面中間顯示死點,我希望它在可視窗口的中間。因此,如果您想象一個長頁面並且用戶向下滾動到接近底部並單擊該按鈕,則div將出現在頁面底部附近的屏幕中央。試圖讓一個div出現在一個可滾動頁面的中心 - 我的代碼中的錯誤?
這裏是我的代碼,這不鉻工作:
function centerdiv() {
var scrolledX, scrolledY;
scrolledX = document.body.scrollLeft;
scrolledY = document.body.scrolltop;
var centerX, centerY;
centerX = document.body.clientWidth;
centerY = document.body.clientHeight;
var leftoffset = scrolledX + (centerX - 100)/2;
var topoffset = scrolledY + (centerY - 100)/2;
$('.current div[name="popup"]').css({'top' : topoffset + 'px', 'left':
leftoffset + 'px'});}
$(function() {
$("html").ajaxStart(function() {
centerdiv();
$(".current div[name=popup]").show();
});
$("html").ajaxComplete(function() {
$(".current div[name=popup]").hide();
});
});
注意,這是用於iPhone移動網站和ajaxstart功能附加到HTML是至關重要的,因爲它不工作的iPhone上的任何其他方式在我的網站上。
它是如何工作的?不顯示div,沒有正確放置它?你看到了什麼結果?你是否嘗試過調試,如果是的話,那麼在非工作情況下所有變量的值是什麼? –