2012-12-21 77 views
1

嗯,我使用同樣&頁面上的多個jQuery的滑塊不知何故,我設法使它工作,但現在還有另外一個問題:jQuery的手風琴 - 衝突與其他的jQuery項目

http://www.tradeglobus.com/index2.php

手風琴菜單:http://jqueryui.com/accordion/#hoverintent

在「Premium Memberships」div實際上在鼠標hoverintent上工作,當我添加「jquery noConflict」時,一切都開始工作,但手風琴菜單現在只在CLICK事件上工作,而不是懸停。

下面的代碼:

<script> 
    var $accui = jQuery.noConflict(true); 
    $(function() { 
$accui("#accordion").accordion({ 
    event: "click hoverintent" 
}); 
    }); 

    var cfg = ($.hoverintent = { 
sensitivity: 7, 
interval: 50 
    }); 

    $.event.special.hoverintent = { 
setup: function() { 
    $(this).bind("mouseover", jQuery.event.special.hoverintent.handler); 
}, 
teardown: function() { 
    $(this).unbind("mouseover", jQuery.event.special.hoverintent.handler); 
}, 
handler: function(event) { 
    var that = this, 
     args = arguments, 
     target = $(event.target), 
     cX, cY, pX, pY; 

    function track(event) { 
     cX = event.pageX; 
     cY = event.pageY; 
    }; 
    pX = event.pageX; 
    pY = event.pageY; 
    function clear() { 
     target 
      .unbind("mousemove", track) 
      .unbind("mouseout", arguments.callee); 
     clearTimeout(timeout); 
    } 
    function handler() { 
     if ((Math.abs(pX - cX) + Math.abs(pY - cY)) < cfg.sensitivity) { 
      clear(); 
      event.type = "hoverintent"; 
      event.originalEvent = {}; 
      jQuery.event.handle.apply(that, args); 
     } else { 
      pX = cX; 
      pY = cY; 
      timeout = setTimeout(handler, cfg.interval); 
     } 
    } 
    var timeout = setTimeout(handler, cfg.interval); 
    target.mousemove(track).mouseout(clear); 
    return true; 
} 
}; 
</script> 

能的你請人強調在此代碼中的任何錯誤?

回答

0

該代碼似乎是正確的。 我看到使用jQuery的版本你的網站:在這個論壇V1.6.2, 我發現有些版本有同樣的問題:

jquery special event hoverintent on accordion not working in jquery 1.7

嘗試升級您的jQuery ...也許它會工作。

+0

但我同時使用jQuery和jQueryUI的最新版本: ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js ajax.googleapis.com/ajax/libs /jqueryui/1.9.2/jquery-ui.min.js 它工作完美,直到我添加$ accui = jQuery.noConflict(true); 然後,所有其他jQuery滑塊和股票行情開始正常工作,但它現在不工作懸停,但點擊。 –