右键单击新选项卡时Javascript未执行
这是我的简单代码右键单击新选项卡时Javascript未执行,javascript,jquery,html,Javascript,Jquery,Html,这是我的简单代码 function goto() { /* Some code to be executed */ if (a == "1") location.href = "http://www.google.com"; else location.href = "http://www.example.com"; } 这是html <a href="#" onclick=
function goto() {
/* Some code to be executed */
if (a == "1")
location.href = "http://www.google.com";
else
location.href = "http://www.example.com";
}
这是html
<a href="#" onclick="goto();">Hello</a>
当我正常单击时,它工作得非常好,但如果我右键单击它并在新选项卡中打开它,它将不会执行。尝试以下操作:
<a href="javascript:goto()">Hello</a>
function goto() {
/* Some code to be executed */
window.open("http://www.google.com");
}
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="jquery.min.js"></script>
<script>
function goto() {
window.location = "http://www.google.com";
}
document.addEventListener('DOMContentLoaded', function () {
document.getElementsByTagName('a')[0].addEventListener('contextmenu', function (ev) {
ev.stopPropagation();
ev.preventDefault();
goto();
});
document.getElementsByTagName('a')[0].addEventListener('click', function (ev) {
goto();
});
}, false)
</script>
</head>
<body>
<a href="#">Hello</a>
</body>
</html>
函数goto(){
/*一些要执行的代码*/
窗口打开(“http://www.google.com");
}
如果要在新选项卡中打开鼠标右键单击
<a href="http://www.google.com">Hello</a>
点击鼠标右键并在新选项卡中打开
或
你可以试试这个:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="jquery.min.js"></script>
<script>
function goto() {
window.location = "http://www.google.com";
}
document.addEventListener('DOMContentLoaded', function () {
document.getElementsByTagName('a')[0].addEventListener('contextmenu', function (ev) {
ev.stopPropagation();
ev.preventDefault();
goto();
});
document.getElementsByTagName('a')[0].addEventListener('click', function (ev) {
goto();
});
}, false)
</script>
</head>
<body>
<a href="#">Hello</a>
</body>
</html>
函数goto(){
window.location=”http://www.google.com";
}
document.addEventListener('DOMContentLoaded',函数(){
document.getElementsByTagName('a')[0]。addEventListener('contextmenu',函数(ev){
ev.stopPropagation();
ev.preventDefault();
goto();
});
document.getElementsByTagName('a')[0]。addEventListener('click',函数(ev){
goto();
});
},错)
试试这个:
<a href="javascript:goto()">Hello</a>
function goto() {
/* Some code to be executed */
window.open("http://www.google.com");
}
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="jquery.min.js"></script>
<script>
function goto() {
window.location = "http://www.google.com";
}
document.addEventListener('DOMContentLoaded', function () {
document.getElementsByTagName('a')[0].addEventListener('contextmenu', function (ev) {
ev.stopPropagation();
ev.preventDefault();
goto();
});
document.getElementsByTagName('a')[0].addEventListener('click', function (ev) {
goto();
});
}, false)
</script>
</head>
<body>
<a href="#">Hello</a>
</body>
</html>
函数goto(){
/*一些要执行的代码*/
窗口打开(“http://www.google.com");
}
如果要在新选项卡中打开鼠标右键单击
<a href="http://www.google.com">Hello</a>
点击鼠标右键并在新选项卡中打开
或
你可以试试这个:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="jquery.min.js"></script>
<script>
function goto() {
window.location = "http://www.google.com";
}
document.addEventListener('DOMContentLoaded', function () {
document.getElementsByTagName('a')[0].addEventListener('contextmenu', function (ev) {
ev.stopPropagation();
ev.preventDefault();
goto();
});
document.getElementsByTagName('a')[0].addEventListener('click', function (ev) {
goto();
});
}, false)
</script>
</head>
<body>
<a href="#">Hello</a>
</body>
</html>
函数goto(){
window.location=”http://www.google.com";
}
document.addEventListener('DOMContentLoaded',函数(){
document.getElementsByTagName('a')[0]。addEventListener('contextmenu',函数(ev){
ev.stopPropagation();
ev.preventDefault();
goto();
});
document.getElementsByTagName('a')[0]。addEventListener('click',函数(ev){
goto();
});
},错)
尝试以下方法:
<a href="#" id="myId">Hello</a>
<script>
document.getElementById('myId').addEventListener('contextmenu', function(ev){
gotoFunc(ev);
});
function gotoFunc(ev){
//run this when right clicked over #myId element
}
</script>
function changeDest(elem) {
/* Some code to be executed */
if (a == "1")
elem.href = "http://www.google.com";
else
elem.href = "http://www.example.com";
}
<a href="#" onmousedown="changeDest(this);">Hello</a>
document.getElementById('myId')。addEventListener('contextmenu',function(ev){
戈托芬奇(ev);
});
功能gotoFunc(ev){
//右键单击#myId元素时运行此操作
}
尝试以下方法:
<a href="#" id="myId">Hello</a>
<script>
document.getElementById('myId').addEventListener('contextmenu', function(ev){
gotoFunc(ev);
});
function gotoFunc(ev){
//run this when right clicked over #myId element
}
</script>
function changeDest(elem) {
/* Some code to be executed */
if (a == "1")
elem.href = "http://www.google.com";
else
elem.href = "http://www.example.com";
}
<a href="#" onmousedown="changeDest(this);">Hello</a>
document.getElementById('myId')。addEventListener('contextmenu',function(ev){
戈托芬奇(ev);
});
功能gotoFunc(ev){
//右键单击#myId元素时运行此操作
}
您可以使用
这应该能奏效。i、 e将url添加到锚定标记的href中您可以使用
这应该能奏效。i、 e将url添加到锚定标记的href如下操作:
<a href="#" id="myId">Hello</a>
<script>
document.getElementById('myId').addEventListener('contextmenu', function(ev){
gotoFunc(ev);
});
function gotoFunc(ev){
//run this when right clicked over #myId element
}
</script>
function changeDest(elem) {
/* Some code to be executed */
if (a == "1")
elem.href = "http://www.google.com";
else
elem.href = "http://www.example.com";
}
<a href="#" onmousedown="changeDest(this);">Hello</a>
function changeDest(元素){
/*一些要执行的代码*/
如果(a=“1”)
elem.href=”http://www.google.com";
其他的
elem.href=”http://www.example.com";
}
这样做:
<a href="#" id="myId">Hello</a>
<script>
document.getElementById('myId').addEventListener('contextmenu', function(ev){
gotoFunc(ev);
});
function gotoFunc(ev){
//run this when right clicked over #myId element
}
</script>
function changeDest(elem) {
/* Some code to be executed */
if (a == "1")
elem.href = "http://www.google.com";
else
elem.href = "http://www.example.com";
}
<a href="#" onmousedown="changeDest(this);">Hello</a>
function changeDest(元素){
/*一些要执行的代码*/
如果(a=“1”)
elem.href=”http://www.google.com";
其他的
elem.href=”http://www.example.com";
}
没错。在新选项卡中打开不是一个单击事件。“单击”事件仅在鼠标左键单击元素时触发:=)右键单击不会触发单击事件:)正确。在新选项卡中打开不是一个单击事件。“单击”事件仅在鼠标左键单击元素时触发:=)右键单击不会触发单击事件:)这对我来说在鼠标中键单击时起作用,但不能在新选项卡中打开。这将不起作用,因为我正在javascript函数中有条件地设置重定向url。无法在href中设置。更新了我的问题。你不要只更改javascript函数中锚定标记的url。它不总是一个新选项卡或新窗口。它可以是右键单击或左键单击,具体取决于用户的操作。此操作为我做了鼠标中键,但不能在新选项卡中打开。这不起作用,因为我正在javascript函数中有条件地设置重定向url。无法在href中设置。更新了我的问题。不要只更改javascript函数中锚定标记的url。这并不总是一个新选项卡或新窗口。它可以是右键单击或左键单击,具体取决于用户的操作