不能在onclick事件(JS)上向元素插入函数
Can't insert a function to a element on onclick event (JS)
这段代码有问题:
var xButton = document.createElement("a");
xButton.className = "cXButton";
xButton.href = "#";
xButton.onclick = "closePanel()";
xButton.innerHTML = "X";
而"closePanel()"是我已经写过的函数。我使用Firebug,发现"onclick"属性没有出现在标记中。我看到一些线程,而不是函数的名称,有它的实现(function closePanel(){…})。这不是我要找的。
有什么建议可以解决吗?
你的原始代码有两个问题:
-
"closePanel()"
为字符串。 -
closePanel()
尝试(或者如果它不是字符串)调用函数并将其输出分配给xButton.onclick
应该是这样:
xButton.onClick = closePanel;
这将给xButton.onClick
分配一个对函数closePanel()
的引用,当xButton.onClick
事件被触发时调用closePanel()
。
请记住,您可以在closePanel()
的声明中使用this
来引用所单击的元素。
相关文章:
- 将html元素插入到文本字符串中,以匹配另一个html字符串
- JavaScript-在不影响索引的情况下将元素插入数组
- 仅为可见元素插入计数
- 将元素插入页眉
- Javascript:如果数组元素已填充,则为数组的每个元素插入表行
- AngularJS:如何将ng-click绑定到使用嵌入或对象元素插入的SVG图像
- 如何将元素插入 JSON 数组
- 为什么我的 HTML 按钮刷新页面?/为什么我不能让我的新 HTML DOM 元素插入到我的页面中
- 当 Javascript 中的 POST ID 元素插入 PDO 时,数据库中没有结果
- 拼接函数将相同的元素插入每个索引
- Javascript 将元素插入 char Ref 到带有子元素的可编辑 DIV 中
- 如何将SVG元素插入到带有JavaScript的组中
- 什么's是将数组中的元素插入到现有Html元素中的有效方法
- 如何将新元素插入'这'子元素Jquery
- 尝试从AngularJS中的控制器($scope)将元素插入到视图(HTML)中
- 将脚本元素插入浏览器操作页无效
- 循环遍历对象数组并将每个元素插入到html中
- jQuery/Javascript向元素插入属性
- 将元素插入DOM,位置基于时间戳
- 条件模板元素插入的EmberJS回调