繁体   English   中英

如何在javascript中使div可点击

[英]how to make div clickable in javascript

paramToExternalFile = 'all';

var div = document.createElement('div');
div.style.background = '#D8D8D8';
div.innerHTML = '<a href=' + xml_list_externalFile_SNS1 + paramToExternalFile + '/' + letters + '>View All</a>';
div.id = 'view_all';
div.className='optionDiv_sns';
ajax_optionDiv_SNS.appendChild(div);

这是用于在下拉列表中创建div的javascript,但我希望此div是可单击的。

如您所见,我已经给出了链接,但是只有当我用鼠标单击该链接时,该链接才能起作用,但是当我按“ enter”(输入)时它将不起作用

您可以像这样将click事件直接添加到div中

div.addEventListener("click", function() {
   alert("You clicked this div");
});

如果要支持较旧的浏览器,则必须做更多的工作:

if (div.addEventListener)
     div.addEventListener("click", function() {
         alert("You clicked this div");
     });
else if (div.attachEvent) 
     div.attachEvent("onclick", function() {
         alert("You clicked this div");
     });
<script type="text/javascript">
function myFn() {
   alert("My div is clicked!!");
   // something else...
}
</script>
<div onclick="myFn();">My DIV body</div>

这是你想要的吗? 或者您可以尝试以下操作:

<div id="myDiv"> My Div body </div>
<script type="text/javascript">
// Works on not-ie
document.getElementById("myDiv").addEventListener("click",function() {
    alert("I'm clicked!!");
}, false);
// Works on all
document.getElementById("myDiv").onclick = function() {
    alert("I'm clicked!!");
}
// Works on ie
document.getElementbyId("myDiv").attachEvent("onclick",function() {
    alert("I'm clicked!!");
});
</script>
$('#view_all').click(function() {
  alert('Handler for .click() called.');
});
div.onclick=function(){
  // whatever you want to happen here
}

使用OnClick事件将Javascript函数附加到该事件,例如:

<div onclick="alert('clicked');">
 This is a div
</div>

要在按下Enter键时调用click函数,您可以尝试以下未经测试的代码,它应该可以工作:

<div onkeydown="if (event.keyCode == 13) DoSomething();"/>

另一方面,您可以使用JQuery来简化操作,请参见以下未经测试的代码:

$("#idivId").keyup(function(event){
  if(event.keyCode == 13){
    $("#DivId").click();
  }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM