将参数传递给 JavaScript 函数
passing arguments to a javascript function
这是一个javascript函数
<script>
function func1(var g){
alert(document.getElementsByTagName('p')[0].innerHTML);
}
</script>
如何将值 0 从函数调用传递到上面的函数定义。
<p onmouseover="func1(0)";>First para</p>
将其更改为
<script>
function func1(g){
alert(document.getElementsByTagName('p')[0].innerHTML);
}
</script>
您需要查看控制台日志以了解弹出的相关错误。
在这种情况下,您在函数参数中声明变量是不允许的,您可以在此处了解有关function
的更多信息。
由于当您将鼠标悬停在第一段上时,您使用[0]
来定位第一段,因此您的函数应该是;
function func1(g){
alert(document.getElementsByTagName('p')[g].innerHTML);
}
一种更规范的 JS 方法是使用 JavaScript 将事件侦听器附加到您的元素,而不是内联代码:
var paras = document.getElementsByTagName('p');
[].slice.call(paras).forEach(function (el, i) {
el.addEventListener('mouseover', func1.bind(func1, i), false);
});
function func1(g){
console.log(paras[g].innerHTML);
}
演示
但也许最好的方法是使用事件委托,这样您就不会向所有元素添加侦听器。将事件侦听器添加到父元素,并在 DOM 冒泡时从 para 中捕获事件:
var div = document.getElementById('paras');
div.addEventListener('mouseover', func1, false);
function func1(e) {
var el = e.target;
if (el.nodeType === 1 && el.nodeName === 'P') {
console.log(el.innerHTML);
}
}
演示
相关文章:
- 从函数JavaScript返回不可变数组/对象
- 将对象传递给函数.JavaScript
- 如何定义const函数javascript(语法糖)
- 新的日期函数javascript
- TypeError:this.getAttribute不是一个函数-javascript
- 从函数javascript发送变量
- 扩展自容器函数Javascript
- 从内部函数javascript内部分配外部函数的对象
- 使用函数JavaScript中的函数
- 在这里使用回调函数(JavaScript)有什么好处吗
- 来自函数 Javascript 的 NaN 返回值 ||函数执行顺序
- 将“e”传递给一个新函数 - javascript
- 调用函数中的一个函数——Javascript
- 传递的变量不适用于我的函数-Javascript
- 如何将类方法设置为等于多个函数?-Javascript
- 显示php中的函数javascript
- 如何使用php代码创建函数Javascript弹出框
- 未调用的外部函数-javascript
- 如何在类中运行函数.Javascript
- 关闭mouseover上的一个函数——Javascript,jQuery