2009-10-26 156 views
1

我想要一個解決方案標籤:懸停,不工作ie6。我的猜測是必須用javascript來完成。優雅ie6懸停css解決方案

我發現這個補丁:csshover3.htc(http://www.xs4all.nl/~peterned/csshover.html),我檢查它的演示!而我沒有在我的ie6瀏覽器上工作!

必須有一個優雅的方式來解決這個非常大的和基本的問題,可能是一個jQuery插件。

任何鉛appriciated

回答

5

使用jQuery,您將能夠使用懸停功能(http://docs.jquery.com/Events/hover)在懸停上添加類。

例如:

$("li").hover(
    function() { 
    $(this).addClass('ie6-hover'); 
    }, 
    function() { 
    $(this).removeClass('ie6-hover'); 
    } 
); 

然後,您可以使類具有相同的屬性。

li:hover, li.ie6-hover { 
    text-decoration: underline; 
} 
+1

+1,打算說一樣的。 – Sinan

+0

基於標籤的簡單解決方案。在他的情況下,我會推薦使用特定的課程來限制頁面上的匹配數量。 –

0

有谷歌的ie7-js,但我不知道這是否解決了比透明PNG問題的其他任何東西。

Visibility inherit提供此alternative,它直接解決了mouseOver /:hover問題。

0

如果您在討論非錨點標籤上的mouseover,可以使用jQuery添加事件處理函數來捕獲鼠標懸停事件。

0

可能不適用於您的上下文,但您可以隨時指出讓您的元素具有懸停效果。例如,在導航ul> li>列表中,使用display:block設置一個元素的樣式,而不是樣式。

1

短的jQuery插件會爲我

IE6TableHover: function() 
    { 
     if(jQuery.browser.msie && /6.0/.test(navigator.userAgent)) 
     { 
      $(this).hover(
        function(){ 
         $(this).addClass('jshover'); 
        }, function(){ 
         $(this).removeClass('jshover'); 
        }); 
     } 
    } 

需要jQuery的版本1.2.6這裏爲1.3.x中你必須改變瀏覽器的檢查。

+0

不幸的是,由於IE6也不能正確支持CSS中的多個類,因此如果試圖將這個類應用於具有現有類的元素,這將具有有限的實用性。 – mkoistinen