为了账号安全,请及时绑定邮箱和手机立即绑定

文本节点可以接收事件吗,例如onclick事件

文本节点可以接收事件吗,例如onclick事件

慕妹3146593 2018-12-06 15:36:55
... var otext=document.getElementById("ediv").firstChild;otext.onclick=function(){alert('text');}; ... <div id="ediv">Click Me</div>   例如上面代码,单击文本并不会发生onclick事件,我在IE、Firefox、Opera试过都是这样。网上都说可以触发,但却没有实际例子,大家有代码例子吗?
查看完整描述

4 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

试试下面这个例子,也许是你想要的。

<html>
<head>
    <title>无标题页</title>
    <script type="text/javascript">
    window.onload=function(){
        document.getElementById("ediv").onclick=function(){ alert("You Clicked me!!");};
    }
    </script>
</head>
<body>
    <div id="ediv" style="width:200px;height:200px;cursor:pointer;background-color:Red;">Click Me</div>
</body>
</html>

你说的文本节点指的是"Click Me",但是你给的问题是div的事件,文本节点只是文本,没有什么事件,要依靠类似于<b> </b>, <font></font>,<p></P>等标签来设置其样式。

另外注意上面的window.onload();当页面加载完毕后执行该方法。那段js的执行必须在名称为"ediv"的标签加载完后才正确。所以“document.getElementById("ediv").onclick=function(){ alert("You Clicked me!!");};”也可以放到名称为"ediv"的div标签后面而不需要使用window.onload()。

查看完整回答
反对 回复 2018-12-24
?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

用Jquery实现,先在<head>中引入 <script type="text/javascript" src="../../Scripts/jquery-1.3.2.js"></script>

接下来代码如下::

<script type="text/javascript">
    $(document).ready(function(){

    $("#ediv").click(function(){
       alert("Click Me");    
   });
   })
</script>

    <div id="ediv">Click Me</div>

查看完整回答
反对 回复 2018-12-24
?
aluckdog

TA贡献1847条经验 获得超7个赞

window.onload = function(){

  var otext=document.getElementById("ediv").firstChild;
  otext.onclick=function(){alert('text');}

}

<input type="button" id="ediv"/>

查看完整回答
反对 回复 2018-12-24
  • 4 回答
  • 0 关注
  • 642 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号