簡體   English   中英

jQuery pjax + jquery tipsy單擊后鼠標彈出時工具提示不會隱藏

[英]jquery pjax + jquery tipsy the tooltip doesn't hide on mouseout after click

在pjax鏈接上使用jquery.tipsy時,單擊鼠標后,工具提示不會隱藏。

這可能意味着在單擊后,mouseout事件未與此元素關聯,這就是問題存在的原因?

這是我加載pjax和tipsy()的方法

$(function () {
    $('[data-pjax]').pjax('#offer-table', {timeout: 100000})
})


<script type='text/javascript'>
  $('a.tipsy').tipsy({delayIn: 500});
</script>

jquery-pjax: https : //github.com/defunkt/jquery-pjax

jQuery Tipsy: http : //onehackoranother.com/projects/jquery/tipsy/

編輯:如果live: true相同的結果live: true添加到tipsy()。

我也遇到過類似的問題。 頁面將pjax用於<div data-pjax-container> 容器內的元素具有提示框,它們在鼠標懸停時顯示,在鼠標懸停時隱藏。 如果我觸發了一個pjax更改,然后在更改時將一個元素懸停,那么棘手的對象將永遠無法隱藏,因為不再有任何元素可以將鼠標移出。

這就是我最終做的,就像CoffeeScript一樣:

PJAX_TIPSY_CLASS = "pjax-tipsy"

$element.tipsy(live: true, className: PJAX_TIPSY_CLASS)

# pjax changes could leave a tipsy up from the old page.
$pjaxContainer = $('[data-pjax-container]')
$pjaxContainer.bind 'pjax:end', ->
  $(".#{PJAX_TIPSY_CLASS}").remove()

或作為JavaScript:

var PJAX_TIPSY_CLASS = "pjax-tipsy";

$element.tipsy({ live: true, className: PJAX_TIPSY_CLASS });

var $pjaxContainer = $('[data-pjax-container]');
$pjaxContainer.bind('pjax:end', function() {
  $("." + PJAX_TIPSY_CLASS).remove();
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM