Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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
无法在<;上触发onmouseup事件;tr>;元素通过Chrome上的JavaScript控制台访问_Javascript_Mouseevent_Onmouseup - Fatal编程技术网

无法在<;上触发onmouseup事件;tr>;元素通过Chrome上的JavaScript控制台访问

无法在<;上触发onmouseup事件;tr>;元素通过Chrome上的JavaScript控制台访问,javascript,mouseevent,onmouseup,Javascript,Mouseevent,Onmouseup,无法通过Chrome上的JavaScript控制台在“tr”元素上触发onmouseup事件 元素如下所示(无法共享确切的代码抱歉): 我得到一个错误: Uncaught TypeError: Cannot read property 'metaKey' of undefined at Object.i [as click] (filename:linenumber) at HTMLTableRowElement.onmouseup (Workbox?ajax:1) at

无法通过Chrome上的JavaScript控制台在“tr”元素上触发onmouseup事件

元素如下所示(无法共享确切的代码抱歉):

我得到一个错误:

Uncaught TypeError: Cannot read property 'metaKey' of undefined
    at Object.i [as click] (filename:linenumber)
    at HTMLTableRowElement.onmouseup (Workbox?ajax:1)
    at <anonymous>:1:45
在这一行中,将显示错误

当我自己用手(鼠标)点击时,此事件起作用。当我使用该命令执行相同操作时,它无法正常运行。由于此“元密钥”未正确传递给它。我可以在onmouseup()调用中传递它吗?还有别的办法吗?在mouseEvents的上下文中,metakey到底指的是什么? 在其他问题上,据说“赢”键就是元键。但是当手动单击时,我不按任何其他键,只按鼠标。在那里它是如何工作的

我在这里的最终目标是在同一个元素上调用相同的函数onmouseup,但在Java中使用selenium库。我还在使用xpath获得的元素上使用JavaScript Executor。它在那里也给出了同样的错误。 因此,如果这能奏效,它也应该在那里奏效

我仔细检查了是否选择了相同的元素,而不是其他元素。
如何解决此问题?

通过这种方式,您可以将事件与所需的数据绑定(以修复错误或出于任何其他原因)-


通过这种方式,您可以将事件与所需的数据绑定(以修复错误或任何其他原因)-


正如@teemu在评论中所说,您所做的不是事件触发器,而是调用函数
onmouseup()
。问题是此调用没有在您的示例中被称为
b
的事件参数,因此
n=b.metaKey | | b.ctrlKey
n=undefined.metaKey | | undefined.ctrlKey

要创建鼠标悬停事件,请使用:

newEvt = new MouseEvent("mouseup", { bubbles: true, cancelable: true, screenX: <your wanted X value>, screenY: <your wanted Y value>, clientX: <your wanted X value>, clientY: <your wanted Y value> }); // screenX, screenY, clientX and clientY are optionals and default to 0 document.getElementsByClassName("one")[0].dispatchEvent(newEvt); newEvt=newmouseevent(“mouseup”{ 泡泡:是的, 可取消:对, screenX:, 屏幕:, 客户:, 客户: }); //screenX、screenY、clientX和clientY是可选的,默认为0 document.getElementsByClassName(“一”)[0].dispatchEvent(newEvt); 请参阅MDN MouseeEvent文档:



关于元键,它们对应于
windows键
或⌘key(源代码:)

就像@teemu在评论中说的那样,您所做的不是事件触发器,而是调用函数
onmouseup()
。问题是此调用没有在您的示例中被称为
b
的事件参数,因此
n=b.metaKey | | b.ctrlKey
n=undefined.metaKey | | undefined.ctrlKey

要创建鼠标悬停事件,请使用:

newEvt = new MouseEvent("mouseup", { bubbles: true, cancelable: true, screenX: <your wanted X value>, screenY: <your wanted Y value>, clientX: <your wanted X value>, clientY: <your wanted Y value> }); // screenX, screenY, clientX and clientY are optionals and default to 0 document.getElementsByClassName("one")[0].dispatchEvent(newEvt); newEvt=newmouseevent(“mouseup”{ 泡泡:是的, 可取消:对, screenX:, 屏幕:, 客户:, 客户: }); //screenX、screenY、clientX和clientY是可选的,默认为0 document.getElementsByClassName(“一”)[0].dispatchEvent(newEvt); 请参阅MDN MouseeEvent文档:



关于元键,它们对应于
windows键
或⌘键(来源:)

onmouseover和onmouseout


点击文本!当在该段落上按下鼠标按钮时,会触发mouseDown()函数,并将文本的颜色设置为红色。释放鼠标按钮时会触发mouseUp()函数,并将文本的颜色设置为绿色。


onmouseover和onmouseout


点击文本!当在该段落上按下鼠标按钮时,会触发mouseDown()函数,并将文本的颜色设置为红色。释放鼠标按钮时会触发mouseUp()函数,并将文本的颜色设置为绿色。



这不完全是一个事件触发器,您只是在调用事件处理函数。好的,那我该怎么办?我是这方面的新手。另外,触发器和调用并不意味着相同?用于附加事件和触发事件。这不完全是事件触发器,您只是调用事件处理程序函数。好的,那么我应该怎么做?我是这方面的新手。此外,触发器和调用并不意味着相同?用于附加事件和触发事件。有人知道如何向javascript代码段添加着色吗?非常感谢,您和@programmer的回答共同帮助解决了问题。有人知道如何向javascript代码段添加着色吗?非常感谢,您和@programmer的回答共同帮助解决了这个问题。但是当我使用鼠标单击时,我没有按任何键(Enter或Win),那么为什么我需要在此处为metaKey指定一些值?我的错误。您不需要设置元键。您的错误是因为事件元素未定义,而不是因为元键没有值。非常感谢,您和jonatjano的回答共同帮助解决了问题。但是当我使用鼠标单击时,我没有按任何键(Enter或Win),所以为什么我需要在此处为元键指定一些值?我的错误。您不需要设置元键。您的错误是因为事件元素未定义,而不是因为元键没有值。非常感谢,你和jonatjano的回答共同帮助解决了这个问题。我不确定这是如何回答我的问题的。你想用它做什么让我为你做我不确定这是如何回答我的问题的。你想用它做什么让我为你做
    n = b.metaKey || b.ctrlKey
var e = new Event('mouseup');
document.getElementsByClassName("one")[0].trigger(e);
newEvt = new MouseEvent("mouseup", { bubbles: true, cancelable: true, screenX: <your wanted X value>, screenY: <your wanted Y value>, clientX: <your wanted X value>, clientY: <your wanted Y value> }); // screenX, screenY, clientX and clientY are optionals and default to 0 document.getElementsByClassName("one")[0].dispatchEvent(newEvt);
< tr class="one" style="height:20px;" onmouseover ="click('first value','2nd value')"> Text </tr>