IE6:jQuery的pngfix +鼠标悬停事件
问题描述:
我想改变一个img-元件(PNG)当光标击中元素的src-ATTRIB。 它在IE6以外的所有浏览器都能正常工作:(IE6:jQuery的pngfix +鼠标悬停事件
起初脚本通过jQuery PNGfix做了一个pngfix(),所以它用span标签包装了img元素并通过过滤器删除了src内容into the span-tag。
我的想法是,为了从运行时间跨度元素中取得样式/ css/...而不是替换img-tag的src-attrib。这里是一个我的代码片段:
$(document).ready(function(){
$('img').bind
({
mouseover : function()
{
symbiontStatus = 1;
$('img').css('backgroundImage', 'img/img02.png');
//...
在pngfix脚本我添加了一个类来跨度,这样我就可以把它叫做:
$(document).ready(function(){
$('.pngfix').bind
({
mouseover : function()
{
alert('over!');
symbiontStatus = 1;
$('.pngfix').css('backgroundImage', 'img/img02.png');
//...
我不知道拿到img02进入pngfix作为背景。您?也许?
谢谢你, 马里奥
答
您可以设置图像src
属性,然后再调用它pngfix
。在此之前,你应该在img
标签后删除该插件添加的span
因为pngfix
将再次创建一个跨度。现在,我们将删除您已绑定,我们将不得不live
mouseover
/mouseout
事件span
。试试这个
$(document).ready(function(){
$('.pngfix').live('mouseover', function(){
symbiontStatus = 1;
var $img = $(this).prev();
$(this).remove()
$img.attr('src', 'img/img02.png').pngfix();
//...
});
});
http://jupiterjs.com/news/why-you-should-never-use-jquery-live(只是一篇不错的文章。) –