我需要顯示我點擊的對話框。如果我點擊下面的鏈接,對話框必須顯示在下面我點擊鏈接的地方,對話框必須出現在相同的位置,但在我的代碼對話框顯示在頁面的頂部中心,即使我們點擊鏈接。對話框定位
jQuery的
$(".showTemplateDialog").dialog('option', 'position', ['center',e.pageY]);
請幫我在鼠標的位置得到對話框。
我試過與頂部和左側的位置也。但我沒有得到答案
我需要顯示我點擊的對話框。如果我點擊下面的鏈接,對話框必須顯示在下面我點擊鏈接的地方,對話框必須出現在相同的位置,但在我的代碼對話框顯示在頁面的頂部中心,即使我們點擊鏈接。對話框定位
jQuery的
$(".showTemplateDialog").dialog('option', 'position', ['center',e.pageY]);
請幫我在鼠標的位置得到對話框。
我試過與頂部和左側的位置也。但我沒有得到答案
嘗試這樣的事情
$(".showTemplateDialog").dialog('option', 'position', [$(this).offset.left,$(this).offset.top]);
看看對話框定位API更多的信息在這裏:http://api.jqueryui.com/dialog/#option-position
UPDATE:現場演示:http://jsfiddle.net/7b2RF/
也許,這可能讓你的想法如何做到這一點:
HTML:
<div id="one" class="divs"></div>
<div id="two" class="divs"></div>
CSS:
.divs {
float: left;
height: 48px;
width: 80px;
border: 1px solid #55f;
}
JS:
$(document).ready(function(){
var $div = $('#two');
var left = $div.offset().left;
var top= $div.offset().top;
$('<p>Some dialog</p>').dialog({position: [left + 20, top + 20]});
});
這是鏈接到demo。
jQuery offset()返回相對於文檔的元素位置,而position()返回相對於偏移父項。
我使用此代碼但對話框僅顯示在頂部。我檢查與警報框之前成功功能警報框使用顯示我點擊的位置,但在成功功能使用的警報框顯示在頂部 – Bhargavi
檢查在更新上面的現場演示,在這裏我已經清理了相同的代碼一點點在小提琴中,並且使用類來代替ID,因此您可以將它用於無限數量的同一類的元素,在這種情況下,我使用了「divs」類。 希望這有助於。 –
在AJAX我使用的成功:函數(objRequest) \t \t \t \t \t \t \t \t \t { \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t提醒(左); \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t $( 'showTemplateDialog。')的HTML($修剪(objRequest)。)。 \t \t \t \t \t \t \t \t \t \t $( 'showTemplateDialog。')對話框( 「開放」)。 \t \t \t \t \t \t \t \t \t $( 「showTemplateDialog。」)對話框({ \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t位置:[左+ 15,頂+ 20 ] \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t}); \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t},成功裏面的警報也顯示在頂部 – Bhargavi