我正在使用jquery-ui,并且在某些时候,我使用显示和隐藏功能来进行动态变化的图像进出。jquery ui-effects-wraper造成破坏
出于某种原因,在几次尝试之后,突然我的网页上的控件停止响应点击。在使用萤火虫周围兜了一下之后,我发现我的页面上充满了该类的div's ui-effects-wrapper。
我不知道为什么会发生这种情况或如何阻止它。如果我删除这些div,我无法再看到我一直在动画的图像。
任何想法?
我正在使用jquery-ui,并且在某些时候,我使用显示和隐藏功能来进行动态变化的图像进出。jquery ui-effects-wraper造成破坏
出于某种原因,在几次尝试之后,突然我的网页上的控件停止响应点击。在使用萤火虫周围兜了一下之后,我发现我的页面上充满了该类的div's ui-effects-wrapper。
我不知道为什么会发生这种情况或如何阻止它。如果我删除这些div,我无法再看到我一直在动画的图像。
任何想法?
ui-effects-wrapper是由jQuery UI效果插件添加的。
这里是从jquery.effects.core.js采取了一些代码:
// Wraps the element around a wrapper that copies position properties
createWrapper: function(element) {
// if the element is already wrapped, return it
if (element.parent().is('.ui-effects-wrapper')) {
return element.parent();
}
// wrap the element
var props = {
width: element.outerWidth(true),
height: element.outerHeight(true),
'float': element.css('float')
},
wrapper = $('<div></div>')
.addClass('ui-effects-wrapper')
.css({
fontSize: '100%',
background: 'transparent',
border: 'none',
margin: 0,
padding: 0
});
element.wrap(wrapper);
wrapper = element.parent(); //Hotfix for jQuery 1.4 since some change in wrap() seems to actually loose the reference to the wrapped element
// transfer positioning properties to the wrapper
if (element.css('position') == 'static') {
wrapper.css({ position: 'relative' });
element.css({ position: 'relative' });
} else {
$.extend(props, {
position: element.css('position'),
zIndex: element.css('z-index')
});
$.each(['top', 'left', 'bottom', 'right'], function(i, pos) {
props[pos] = element.css(pos);
if (isNaN(parseInt(props[pos], 10))) {
props[pos] = 'auto';
}
});
element.css({position: 'relative', top: 0, left: 0, right: 'auto', bottom: 'auto' });
}
return wrapper.css(props).show();
},
在一个功能,我有一些代码,切换的两个按钮和所使用的效果,如fadeTo和弹跳的可见性。偶尔会有一个包装剩余。 我试着将这个添加到我的方法中,这个想法是在效果排队后的1.1秒后它会移除包装。
setTimeout('$(".ui-effects-wrapper").children().unwrap();', 1100);
这将删除陈旧的包装,但有可能它也可以删除用于效果的后续包装。
我对看到这项技术的改进很感兴趣。
你可以做的一件事是在隐藏方法中使用回调函数,并将你的调用打开。 – 2016-08-16 21:41:57
您的HTML有效吗?如果不是那么元素删除将遍布整个地方,请在此处检查有效性:http://validator.w3.org/ – 2010-05-27 21:11:26
为什么与项目删除相关的有效性?我无法解决这个问题。我在我的网站上使用了Facebook控件,并且他们的控件不是w3有效= [还有其他想法? – vondip 2010-05-27 23:51:14