[英]Jquery if else statment for tooltip
將鼠標懸停在鏈接上時,會顯示一個工具提示。 我希望如果您將鼠標懸停在工具提示上(因為其中包含鏈接等),或者如果您將鼠標移離鏈接,則工具提示將消失。 我嘗試了幾件事,但還沒有弄清楚。 這是我第一次用jQuery構建任何重要內容。
下面的內容是.hover()'handlerOut'事件中的內容。
if($(this.a).mouseout())
{
if ($('.tip_container').hover()) {
$('.tip_container').css('display', 'block');
$('.tip_container').mouseleave(function() {
$('.tip_container').remove(0);
});
} else if ($('.tip_container').hover() == false && $(this.a).mouseoff() == true)
{
$('.tip_container').remove(0);
}
}
>>"this.a" refers to the link<<
借助此操作以及我嘗試過的其他操作,除非將鼠標懸停在工具提示上,否則工具提示不會消失。 我也試過
else if (!$('.tip_container').hover() && $(this.a).mouseoff()) {
是否可以有多個條件?
該代碼的主要思想是,如果您將鼠標懸停在“ this.a”鏈接上,則將通過以下方式刪除工具提示:
$('.tip_container').remove(0);
但是如果您將鼠標懸停在工具提示上,除非將其從工具提示上移開,否則它不會被刪除。
您有小提琴或其他任何要證明的東西嗎?
也許像
$(this, '.tip_container').hover(function () {
$('.tip_container').show();
}, function () {
$('.tip_container').hide();
}
);
基本上將鏈接和工具提示元素都綁定到懸停方法,該方法在mouseenter / mouseleave上隱藏/顯示工具提示元素。 Pointy發表在評論中的鏈接是一個不錯的起點
經過一夜安眠后,忽略了片刻,我想出了一個解決方案。 這就是我在懸停handlerOut事件中添加的內容。
var timer;
timer = setTimeout(function() {
$('.tip_container').remove();
}, 500);
$( '.tip_container' ).hover(
function() {
clearTimeout(timer);
$('.tip_container').css('display', 'block');
}, function() {
$('.tip_container').remove();
}
);
在鼠標懸停在鏈接上之前,它將等待執行刪除,並且如果鼠標懸停在工具提示上,它將清除計時器並將工具提示設置為阻止以保持其顯示,然后在該鼠標懸停在工具提示上時,它將被刪除。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.