mootools“这”在每个?

时间:2010-11-02 02:29:34

标签: javascript mootools

可能误解了一些简单的东西,但我似乎无法让它发挥作用。

我想:通过“wrapper”中的每个img元素,并从title属性中删除所有html(使用来自mootools的stripTags()更多)。我收到错误:

“this.get不是函数”

这是代码:

$('wrapper').getElements('img').each(function() {

    var oldAlt = this.get('title').stripTags();
    this.setProperty('alt', oldAlt);

});

提前致谢

2 个答案:

答案 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的答案