如何在javascript中交替单击时调用弹出窗口?
嗯,我一直在尝试让交替点击弹出一个新窗口。也就是说,如果用户单击第一次单击不会调用任何弹出窗口,那么每隔一秒单击、第四次单击、第六次单击都会调用弹出窗口。这是我尝试过的代码,但它不起作用如何在javascript中交替单击时调用弹出窗口?,javascript,Javascript,嗯,我一直在尝试让交替点击弹出一个新窗口。也就是说,如果用户单击第一次单击不会调用任何弹出窗口,那么每隔一秒单击、第四次单击、第六次单击都会调用弹出窗口。这是我尝试过的代码,但它不起作用 jQuery(document).ready(function( $ ){ var canClick = 2; $("body").click(function () { if (canClick%2=0) { window.open("https://ex
jQuery(document).ready(function( $ ){
var canClick = 2;
$("body").click(function () {
if (canClick%2=0) {
window.open("https://example.com").blur();
window.focus();}
canClick = canClick+1;
});
});
当您尝试将
计数%2
与此行中的0
进行比较时
if (canClick % 2 = 0)
。。。您使用的是分配值的=
,不进行比较。相比之下,您可以在此处正确使用=
运算符:
canClick = canClick + 1
要实际比较等式,有两个相关运算符:
测试“软相等”,其中=
但1==1
1==“1”
还测试类型是否相等,因此==
但是1===1
(因为它们的类型是1!==“1”
和number
)string
=
。这将是您的条件的工作版本,如果
条件:
if (canClick % 2 === 0) { ... }
不关注解决方案:
函数($){
看起来很奇怪。我认为美元符号不需要在那里?=
是赋值运算符。==
是相等运算符。感谢您提供此代码片段,它可能会提供一些有限的、即时的帮助。通过说明为什么这是一个很好的问题解决方案,A将大大提高其长期价值,并将请编辑您的答案,添加一些解释,包括您所做的假设。@Syscall,这是一个直截了当的问题和答案,
if (canClick % 2 === 0) { ... }