Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery.click()正在单击,但它不应该´;T_Javascript_Jquery_Html_Css_Testing - Fatal编程技术网

Javascript jQuery.click()正在单击,但它不应该´;T

Javascript jQuery.click()正在单击,但它不应该´;T,javascript,jquery,html,css,testing,Javascript,Jquery,Html,Css,Testing,在测试JavaScript时,我遇到以下问题: $('idOfMyElement')。单击() 被执行。但是我想验证一下我的测试,也就是说,没有执行,因为它有以下CSS: 我调试了它,可以肯定的是,当执行.click()时,它肯定具有前面提到的CSS属性。在我的普通程序中,它工作(意味着点击不工作),但在我的测试中,点击工作,即使它不应该工作 我没有clou,可能有什么问题。 谢谢你的帮助 看起来您在测试中使用$(“#idOfMyElement”)以编程方式触发事件。单击();在这种情况下,它

在测试JavaScript时,我遇到以下问题:

$('idOfMyElement')。单击()

被执行。但是我想验证一下我的测试,也就是说,没有执行,因为它有以下CSS:

我调试了它,可以肯定的是,当执行
.click()
时,它肯定具有前面提到的CSS属性。在我的普通程序中,它工作(意味着点击不工作),但在我的测试中,点击工作,即使它不应该工作

我没有clou,可能有什么问题。
谢谢你的帮助

看起来您在测试中使用
$(“#idOfMyElement”)以编程方式触发事件。单击();在这种情况下,它不受CSS鼠标规则的约束,因此将执行单击处理程序


在触发测试套件中的单击事件之前,您需要检查鼠标指针规则。

指针事件仅正确响应真实的指针事件。如果您触发click()函数,它将在您创建它的所有时间内激发。如果指针事件处于活动状态,只需添加一个条件读数,或将其替换为禁用的属性即可

使用jQuery防止默认的单击事件:

$('#idOfMyElement').on('click', function(e) {
  e.preventDefault(); });
*更新*

既然我知道了您要做什么,我强烈建议您使用javascript而不是CSS,因为CSS的工作方式与您尝试使用它的方式不同–javascript确实如此。不要使用CSS属性,而是使用Javascript变量

当您希望元素可单击时

$('idOfMyElement').prop('disabled',false)

当它应该不可读取时

$('idOfMyElement').prop('disabled',true)


浏览器在不需要CSS的情况下处理光标,单击事件应该做出适当的反应。希望这是有帮助的

好的,这意味着我必须在我的测试中比在我的程序中更具体?在我的程序中,我没有额外的鼠标指针规则或类似的检查。在我的程序中,我给元素提供了提到的css属性,然后单击什么都不做,一切都很好。但是在这个解决方案中,单击永远不会执行,不是吗?当给定所提到的css属性时,单击应该什么也不做。对不起,我的英语不好,我不理解;-)更新我的答案以满足您的需要!