JavaScript 函数 通过调用 Element 访问此内容
JavaScript Function Access this from calling Element
我有一个函数,我想执行与调用元素相关的函数,但我似乎无法将其作为对我要执行的函数的引用传递。
简而言之,这有效
<div style="background-color:#444444">
<button onclick="this.parentElement.style.display = 'none';">close</button>
</div>
而这并没有
<script>
function close() { this.parentElement.style.display = 'none'; }
</script>
<div style="background-color:#444444">
<button onclick="close()">close</button>
</div>
为什么会这样,有没有办法解决它?
没
关系,我是个白痴
似乎我可以简单地使用 this 关键字将元素传递给函数
<script>
function close(object) { object.parentElement.style.display = 'none'; }
</script>
<div style="background-color:#444444">
<button onclick="close(this)">close</button>
</div>
这是因为在close()
函数中,this
是window
对象。
尝试将元素作为参数传递:
<script>
function close(btn) { btn.parentElement.style.display = 'none'; }
</script>
<div style="background-color:#444444">
<button onclick="close(this)">close</button>
</div>
在我的头顶上,"this"并不指向函数中的同一对象,因为它在内联代码中指向相同的对象。 您可以在函数调用中传递"this",如下所示:
<script>
function close(whichObj) { whichObj.parentElement.style.display = 'none'; }
</script>
<div style="background-color:#444444">
<button onclick="close(this)">close</button>
呵呵,吉姆
相关文章:
- 访问布局信息是否也会导致浏览器重排
- Javascript,访问一个主要对象模块模式中的每个对象
- 如何访问声音管理器2创建的声音对象
- 在Twitter上用ie9中的空白src访问iframe的contentWindow
- jQuery:.click(function(){(element),collapse('show',f
- JavaScript Pub/Sub属性访问问题
- 从JavaScript访问struts操作中的属性
- 是否可以从父类访问子类的属性
- 如何访问fastOpt.js
- 访问和修改“HTMLInputElement.
”是否比“Element”更快.(g/s)etAttr - JavaScript 函数 通过调用 Element 访问此内容
- AngularJS:使用 element.bind('input') 访问自定义指令中的事件
- 如何访问javascript document.createElement函数创建的Element
- 如何在不使用element'的情况下使用javascript访问表单元素;s的id
- 在模板中访问angular指令(element)'
- Angular2:如何用Javascript从index.html中访问DOM-Element(在Component内部
- 将element替换为outerHTML并立即访问新创建的元素
- 实时访问HTML输入并在HTML -element中显示
- Aurelia:访问Custom Element's的自定义函数或自定义属性
- 在使用$element.ech()时加快DOM访问速度