2013-03-27 25 views
0

我寫這個代碼彈出創建:如何禁用/解決方法自動滾動到頁面的末尾上彈出/ DIV添加

function showPopup(titleString, contentHtml, widthInt, heightInt) { 
var popupID = 'dialog-modal'; 
if ($("#" + popupID).length == 0) { 
    jQuery(document.body).append('<div id="' + popupID + '"/>'); 
} 
var popup = $("#" + popupID); 

popup.html('<div id="' + popupID + '" style="width:100%; height:100%;">' + contentHtml + '</div>'); 
popup.dialog({ 
    width : widthInt, 
    height : heightInt, 
    title : titleString, 
    modal : true 
}); 

}

而這種代碼被稱爲上按一下按鈕。 ..

問題是 - 當我點擊按鈕時,第一次,頁面滾動到最後,彈出窗口顯示在那裏。這不會發生,第二次等。 (我的意思是,在2,3 ...倍,彈出窗口顯示在當前頁面位置的中間)

而且,似乎這是針對Chrome的,因爲它不會發生在FF或IE中。

所以,quetions是 - 爲什麼會發生?以及如何擺脫它?

(我對JS/HTML只第三天寫:)可我已經錯過了水木清華)

呼叫的方法是通過按鈕來完成,從JSF生成:

<input type="button" name="form:j_idt85" value="Show list" class="show-list" onclick="showListInPopup()"> 
+0

上午我讀正確,你中*添加一個div popupID *的ID與popupID的ID的DIV?這似乎有點奇怪。請記住:每個頁面上只能有一個給定ID的一個實例。至於跳躍:你有沒有機會在你點擊的按鈕的href中有一個錨點? (假設您使用鏈接)。我想你會添加更多的代碼,以便我們可以幫助你。 (也可能是小提琴;) – isotrope 2013-03-27 19:16:39

回答

0

我注意到jquery ui樣式表中沒有包含相同的行爲。你的網頁上有你的樣式表嗎?

如果沒有,試着加入:

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" /> 
相關問題