为左键或右键单击附加事件侦听器-onclick'右键单击无效

Attaching an event listener for left or right click - onclick doesn't work for right click

本文关键字:右键 单击 -onclick 无效 侦听器 事件      更新时间:2023-09-26

我目前正在申请实习链接

我马上注意到的一件事是,你点击上传求职信或粘贴求职信,就会被重定向到求职邀请网站job invite的主页,很遗憾你无法上传求职信。另一方面,上传简历工作得很好,但粘贴简历也有同样的问题
有人知道如何解决这个问题,并能够提交求职信吗?

我不是一个网络大师,但由于我正在申请一个工程职位,我正在努力寻找解决这个问题的方法。我右键单击了上传求职信链接,并使用inspect元素工具检查了该链接。我发现这个功能

onclick="jvAddAttachment2('jvcoverletter', 'qLY9Vfwx')

单击按钮时将被调用。现在进入这个html页面的JavaScript文件,Inspect Element->Sources->*careers_8.js?v=303,我试图从警报对话框中做一个基本的警报语句,进行一些调试,看看问题是什么

function jvAddAttachment2(id, companyId){
    alert("I got here");
    ....
}

然后我控制了s,Inspect Element控制台输出"重新编译和更新成功"。所以我假设JavaScript文件已经更新。但是,当我单击链接(通过右键单击,打开新窗口)时,不会显示任何警告框
有人知道如何显示警报对话框吗?我想我已经尽我所能利用我在一门网络开发课程中的工作知识了,哈哈。

您正在查找右键单击的contextmenu事件:

element.addEventListener('contextmenu', function() {
  // code here
});

请不要像html中的onclick那样使用内联js。上面的示例是连接事件侦听器的正确方法。

您应该使用var myElem = document.getElementById('the-id')document.querySelector等类似函数在javascript中获得元素引用。

然后,您可以很容易地将这两个事件附加为:

// left click
myElem.addEventListener('click', myFn);
// right click
myElem.addEventListener('contextmenu', myFn);

如果你坚持使用内联js,那就是:

<div onclick="myFn()" oncontextmenu="myFn()"></div>

两种方法的完整演示:

var myElem = document.getElementById('my-element');
myElem.addEventListener('click', myClickFn);
myElem.addEventListener('contextmenu', myClickFn);
function myClickFn() {
  console.log('this is myClickFn!');  
}
function someFn() {
  console.log('this is someFn!');  
}
<div id="my-element" onclick="someFn()" oncontextmenu="someFn()">Left or Right click me!</div>

此外,由于您希望将参数传递给单击时要调用的函数,因此最好为事件使用一个中间函数,并让该函数调用另一个函数,传递参数,如下所示:

function myClickFn() { // this is called on click
  myOtherFunction('some', 'params');
}

这样就可以避免重复相同的函数调用,在两个位置传递相同的参数。

确保在末尾用":关闭onclick字符串

onclick="jvAddAttachment2('jvcoverletter', 'qLY9Vfwx')"

并单击鼠标左键而不是单击鼠标右键。

 onclick="jvAddAttachment2('jvcoverletter', 'qLY9Vfwx')"

我认为没有双引号。

演示