我有Jquery qtip()函數,並且需要在鼠標懸停鏈接時獲取id。我可以使用jquery .load()來獲取頁面。不能使用下面的代碼。有人知道嗎?
下面是我的腳本
$(function() {
$(".cabinlink").qtip({
content: $("#loadCabin").load("/mysite ." + $(this).attr('id')),
show: 'mouseover',
hide: 'mouseout',
style: {
width: 780
},
position: {
corner: {
target: 'LeftBottom',
tooltip: 'TopLeft'
}
}
});
});
.cabinlink是mousehover鏈接
<a id="1" href="javascript:void(0)" class="cabinlink" />
<a id="2" href="javascript:void(0)" class="cabinlink" />
<a id="3" href="javascript:void(0)" class="cabinlink" />
loadCabin是開拓qtip箱
<div id="loadCabin"></div>
修正碼股利,能夠工作,但需要鼠標兩次。第一個mouseover沒有結果。有人知道嗎?
$(function() {
$(".cabinlink").live('mouseover', function() {
var id = $(this).attr('id');
var url = "/Mysite ." + id;
$(this).qtip({
overwrite: false,
content: $("#loadCabin").load(url),
show: { ready: true, when: false },
hide: 'mouseout',
style: {
width: 780
},
position: {
corner: {
target: 'LeftBottom',
tooltip: 'TopLeft'
}
}
});
});
});
ID不能以數字開頭。 – Blender 2013-03-06 01:39:01
我不知道qtip API能夠很好地回答你的問題,但我可以告訴你,你沒有得到你期望的ID,因爲「this」指的是你傳遞給qtip的選項對象,而不是到被徘徊的元素。我想qtip的一個選項可以讓你傳遞一個回調函數,你可以調用$(this).attr('id')來返回元素的ID。 – 2013-03-06 03:03:47
除此之外,您還需要考慮時間... $(「。cabinlink」)。qtip(...)在頁面加載後立即運行,並且只是告訴它使用給定的選項進行初始化。稍後,懸停事件由qtip處理,只有這樣,您纔會知道哪個元素被懸停。 – 2013-03-06 03:08:37