chrome中button的默认函数

chrome版本: 24.0.1312.5
js代码: <input id="remove" onclick="remove();" type="button" value="移除"/>

在chrome点击按钮后 按钮本身移除了,而我并没有编写remove函数. 感觉很奇怪,于是用了以下代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>chrome bug</title>
</head>

<body>
    <input id="remove" οnclick="remove();" type="button" value="移除"/>
    
    <script>
        var t=document.getElementById('remove');
        for(attr in t)
            document.write(attr+'<br/>');
    </script>
</body>
</html>

打印结果中查看到remove函数,原来chrome中button本身就有remove函数.难道是html5的新特性?

在firefox和safari中测试均没有发生上述情况。

为了查看remove的函数具体实现,用以下代码具体查看:

    <script>
        var t=document.getElementById('remove');
            document.write(t.remove+'<br/>');
    </script>


print:

    function remove() { [native code] }

结果说明此函数是通过c++实现。

不知道这是不是chrome的一个bug , input如果是text类型,只要绑定οnclick='remove()'  点击文本框,文本框也消失了,让开发人员莫名奇妙!

解决办法:

  更改事件名,不让自己写的事件函数和内置的函数冲突。

<input id="remove" onclick="drop();" type="button" value="移除"/>

转载于:https://www.cnblogs.com/BigIdiot/archive/2012/11/16/2773386.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值