Javascript jQuery在div元素内部和外部分离dblclick事件
我正在开发一个用于内容创建的本地站点,我想使用javascript的双击功能 当用户双击divs外的名称/ids bigwrapper或bigwrapper2时,我希望通过全屏背景图像进行旋转。当用户单击#bigwrapper或#bigwrapper2时,我希望它是.toggle();每个都可以隐藏/显示一个或另一个 以下是我的更新代码(感谢lordvlad):Javascript jQuery在div元素内部和外部分离dblclick事件,javascript,jquery,events,dom,Javascript,Jquery,Events,Dom,我正在开发一个用于内容创建的本地站点,我想使用javascript的双击功能 当用户双击divs外的名称/ids bigwrapper或bigwrapper2时,我希望通过全屏背景图像进行旋转。当用户单击#bigwrapper或#bigwrapper2时,我希望它是.toggle();每个都可以隐藏/显示一个或另一个 以下是我的更新代码(感谢lordvlad): $(function() { $( "#bigwrapper" ).draggable(); $( "#bigwrapper
$(function() {
$( "#bigwrapper" ).draggable();
$( "#bigwrapper2" ).draggable();
var SacramentoBG = ['nightcap.jpg','Tower_Bridge_Sacramento_edit.jpg'],
counter =0;
$('html').dblclick(function (event) {
if (event.target.id != "bigwrapper" && event.target.id != "bigwrapper2") {
counter = (counter+1) % SacramentoBG.length;
$('html').css('background-image', "url("+SacramentoBG[counter]+")");
} else {
$("#bigwrapper").toggle();
$("#bigwrapper2").toggle();
}
});
});
更新:下面在函数中添加“事件”的解决方案在一定程度上有所帮助,因为背景旋转正确,但是#bigwrappers没有按预期进行切换(else条件)。参见:创意?
谢谢 这是因为dblclick函数不知道
事件
变量。试试这个
$('html').dblclick(function (event) {
这是因为dblclick函数不知道
事件
变量。试试这个
$('html').dblclick(function (event) {
对我有效的完整答案是,我需要停止排除特定的类名/ID,而是排除整个元素标记。或者,如果(event.target.TagName=='BODY'){}
$('body').dblclick(function (event) {
if (event.target.tagName != 'DIV' && event.target.tagName != 'IMG' && event.target.tagName != 'TABLE' && event.target.tagName != 'HR' && event.target.tagName != 'SMALL' ) {
counter = (counter+1) % SacramentoBG.length;
$('html').css('background-image', "url("+SacramentoBG[counter]+")");
} else {
$("#bigwrapper").toggle();
$("#bigwrapper2").toggle();
}
});
对我有效的完整答案是,我需要停止排除特定的类名/ID,而是排除整个元素标记。或者,如果(event.target.TagName=='BODY'){}
$('body').dblclick(function (event) {
if (event.target.tagName != 'DIV' && event.target.tagName != 'IMG' && event.target.tagName != 'TABLE' && event.target.tagName != 'HR' && event.target.tagName != 'SMALL' ) {
counter = (counter+1) % SacramentoBG.length;
$('html').css('background-image', "url("+SacramentoBG[counter]+")");
} else {
$("#bigwrapper").toggle();
$("#bigwrapper2").toggle();
}
});
检查控制台,看看是否有任何错误!可能会有一些有趣的东西在里面读。在这里工作很好。。。在按照lordvlad的解决方案将“事件”添加到函数后,是否可以复制更多控制台错误@PSL:查看上面的url。检查控制台,看看是否有任何错误!可能会有一些有趣的东西在里面读。在这里工作很好。。。在按照lordvlad的解决方案将“事件”添加到函数后,是否可以复制更多控制台错误@请看上面的网址。谢谢!这有助于修复后台循环,但#bigwrapper的.toggle()根本不起作用。思想?这里是网址:谢谢!这有助于修复后台循环,但#bigwrapper的.toggle()根本不起作用。思想?以下是网址: