我基本上做的是首先啓動的提示jQuery的功能,因爲它們在其文檔中做到:
$(document).ready(function(){
$(document).tooltip({
items: ".info_warning",
content: function() {
var element = $(this);
if (element.is(".info_warning")) {
return element.text()
}
},
tooltipClass: "info_tooltip"
})
})
正如你所看到的,我告訴它只是爲了尋找與類「info_warning」這些元素並且其內容是元素內容(這是因爲我不喜歡title屬性)。
然後,我所做的是告訴它,如果檢測到「click」或「touch」事件,請檢查屬性「aria-describedby」,這是jQuery在元素添加到元素時工具提示正在顯示(所以,這樣我知道工具提示是否激活)。
最後,如果工具提示沒有激活,我會觸發一個「鼠標懸停」事件來模擬鼠標懸停效果,如果它是活動的,我會觸發一個「mouseleave」。
$(document).on("click touchend", ".info_warning", function(){
if($(this).attr("aria-describedby") === undefined) $(this).trigger("mouseover")
else $(this).trigger("mouseleave")
})
我已經寫了兩個事件(「點擊」和「touchend」),因爲這並不重要,因爲它只會使消失的情況下,它已經被激活的提示,但它是隻需要在「touchend 「事件。
希望它有助於某人!
親切的問候。