【问题标题】:IE6: jQuery pngfix + mouseover-eventsIE6:jQuery pngfix + 鼠标悬停事件
【发布时间】:2011-11-01 04:28:06
【问题描述】:

我想在光标碰到元素时更改 img-element (png) 的 src-attrib。 它在除 IE6 之外的所有浏览器中都能正常工作:(

脚本首先通过 jQuery PNGfix 执行 pngfix()。所以它用 span-tag 包装了 img-element,并通过过滤器将 src-content 放到 span-tag 中。

我的想法是,从 runtime-span 元素中获取 style/css/... 并替换它 - 而不是替换 img-tag 的 src-attrib。这是我的代码的 sn-p:

$(document).ready(function(){
$('img').bind
({
    mouseover : function() 
    {
        symbiontStatus = 1;
        $('img').css('backgroundImage', 'img/img02.png');
//...

在 pngfix 脚本中,我向 span 添加了一个类,所以我可以调用它:

$(document).ready(function(){
    $('.pngfix').bind
    ({
        mouseover : function() 
        {
alert('over!');
            symbiontStatus = 1;
            $('.pngfix').css('backgroundImage', 'img/img02.png');
    //...

我不知道将 img02 作为背景放入 pngfix。你?也许吧?

谢谢你, 马里奥

【问题讨论】:

    标签: jquery internet-explorer-6 hover pngfix


    【解决方案1】:

    您可以设置图像src 属性,然后再次调用pngfix。在执行此操作之前,您应该删除插件在img 标记之后添加的span,因为pngfix 将再次创建一个跨度。现在我们将删除您绑定了mouseover/mouseout 事件的span,我们将不得不绑定live。试试这个

    $(document).ready(function(){
        $('.pngfix').live('mouseover', function(){
                symbiontStatus = 1;
                var $img = $(this).prev();
                $(this).remove()
    
                $img.attr('src', 'img/img02.png').pngfix();
        //...
         });
    });
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-12
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    • 2011-08-04
    • 1970-01-01
    相关资源
    最近更新 更多