以下版本不适用于Chrome,但适用于IE和Firefox:
<div id="removeField" onclick="remove(0);" style="cursor: pointer;">-Remove</div>
不会调用remove()函数。知道为什么吗?
答案 0 :(得分:5)
根据this Chrome bug report,他们实施了remove
功能 spec 。似乎Chrome有.remove()
方法,允许您自行删除元素。您可能希望将您的功能命名为其他内容。这是注意实施的webkit changelog。
答案 1 :(得分:1)
remove
是Chrome中DOM元素的成员函数。在您的控制台中,您可以通过运行以下内容来查看:
> document.createElement("div").remove
function remove() { [native code] }
在内联事件处理程序中,该元素的所有属性(包括成员函数)都可用作顶级变量。内联代码有效地在with(thisElement)
块内运行。在内联事件代码的上下文中,标识符remove
引用元素的remove
方法,而不是全局范围remove
函数。
将函数名称更改为不与元素的方法名称冲突的内容,或明确使用window.remove
。
(修改自this previous answer of mine处理IE中start
方法的类似案例。)