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

请问为什么改成这样不行?

<h4>测试二</h4>

    <div class="test2">

        <p>$('button:first').click(function(e) {alert(this)})</p>

    </div>

    <button>指定触发事件</button>

    <script type="text/javascript">

        $('p').click(function(e) {

            alert(e.target.textContent)

        })

        //this指向button元素

        $("button:eq(1)").click(function() {

            $('p').click() //指定触发绑定的事件

        })

    </script>

$("button:eq(1)").click(function() {

            $('p').click() //指定触发绑定的事件

改成

$('button:eq(1)'.click(function(e)){

        alert(e.target.textContent)

})

得到的结果却是”指定触发事件“,为什么不是”$('button:first').click(function(e) {alert(this)})“?

正在回答

1 回答

e.target表示的是当前事件的触发DOM对象,你点的是button,所以e.target.textContent就是按钮上的内容。

$('p').click()是触发p标签的点击事件,

$('p').click(function(e) {

            alert(e.target.textContent)

        })这是p标签的点击事件的处理方式,alert(e.target.textContent)所以这里输出的是p标签的内容


1 回复 有任何疑惑可以回复我~
#1

流浪滴汪汪汪

$("button:eq(1)").click(function() { $('p').click() //指定触发绑定的事件 })的意思是通过button事件,然后以代码的方式调用p的事件
2017-03-02 回复 有任何疑惑可以回复我~
#2

玩偶lpa 提问者

非常感谢!
2017-03-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问为什么改成这样不行?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信