ポップアップ作成用に次のコードを作成しました。
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回目などは起こりません。(つまり、2,3... 回で、現在のページ位置の真ん中にポップアップが表示されます)
FF や IE では発生しないため、これはクロムに固有のようです。
それで、質問は - なぜそれが起こるのですか? そしてそれを取り除く方法は?
(私は 3 日目だけ JS/html について書いています :) 見逃しているかもしれません)
メソッドの呼び出しは、JSF から生成されたボタンによって行われます。
<input type="button" name="form:j_idt85" value="Show list" class="show-list" onclick="showListInPopup()">