可能误解了一些简单的东西,但我似乎无法让它发挥作用。
我想:通过“wrapper”中的每个img元素,并从title属性中删除所有html(使用来自mootools的stripTags()更多)。我收到错误:
“this.get不是函数”
这是代码:
$('wrapper').getElements('img').each(function() {
var oldAlt = this.get('title').stripTags();
this.setProperty('alt', oldAlt);
});
提前致谢
答案 0 :(得分:6)
$('wrapper').getElements('img').each(function(el) {
var oldAlt = el.get('title').stripTags();
el.setProperty('alt', oldAlt);
});
这不是指循环元素 - .each回调函数的第一个参数是element
传递,第二个是index
(与jquery相反,其中index是第一个)。
答案 1 :(得分:-2)
另一种选择是绑定this
变量
$('wrapper').getElements('img').each(function() {
var oldAlt = this.get('title').stripTags();
this.setProperty('alt', oldAlt);
}).bind(this);
额外.bind(this)
基本上意味着,在每个函数内部的范围内,变量this
被绑定到外部引用的任何值。 (比如将变量传递到范围内)。如果你需要访问普通的这个指针,作为外部参考,你应该选择@ Chetan的答案