动态添加的Div不会在IE中捕获事件?

时间:2013-07-17 02:13:31

标签: php internet-explorer dynamic

我在代码中使用javascript添加了一些动态div。

$('div#Tips').append(''
    + ' <div class="singleTip" id="'+data.x+''+data.y+'">'
    + data.content
    + ' </div>'
);

当用户将鼠标悬停在某些元素上时,我会显示此div。但它在IE中不起作用。它适用于所有其他浏览器。 有人可以帮忙吗?我是新手。

编辑:添加了JS代码

$('.tipPointer').hover(
    function(){
        var id = $(this).attr('id');
        $('div#allTips').children('div.singleTip#'+id).show();
    },
    function(){
        var id = $(this).attr('id');
        $('div#allTips').children('div.singleTip#'+id).hide();
    }
);

1 个答案:

答案 0 :(得分:1)

我对IE有类似的问题,后来只缩小到IE10。

要解决尝试将背景图像添加到未显示的div元素。由于某种原因,即使插入了不存在的图像,它也能正常工作,因此我使用了一个如下图像。

<?php   if (preg_match('~MSIE|Internet Explorer~i', $_SERVER['HTTP_USER_AGENT'])) {?>
<style type="text/css">
    .qtip{
        background-image:url(/none);
    }
</style>
<?php   }   ?>

我还添加了一个PHP检查,仅针对IE实现此CSS,因为其他浏览器会为背景图像抛出404错误(并继续加载)。

我不记得我从哪里得到这个解决方案。如果我找到原始链接,我会更新答案。