0

这是我正在使用的 HTML

<ul>
      <li><strong>list</strong> item 1 -
        one strong tag</li>
      <li><strong>list</strong> item <strong>2</strong> -
        two <span>strong tags</span></li>
      <li>list item 3</li>
      <li>list item 4</li>
      <li>list item 5</li>
      <li>list item 6</li>
</ul>

我正在使用 .filter() 方法以两种方式对其进行修改:

第一的:

$('li').filter( function(foo) {
    console.log(this);
    return foo == 2;
}).css('background-color', 'red');

第二:

$('li').filter( function(foo) {
    console.log(this);
    return foo % 3 == 2;
}).css('background-color', 'red');

在第一种情况下,Chrome 记录了这个: 在此处输入图像描述 在第二种情况下: 在此处输入图像描述

为什么控制台this在不同情况下显示不同的值?

4

1 回答 1

1

“为什么控制台this在不同情况下显示不同的值?”

它没有。假设 DOM 没有改变,它两次都显示相同的元素。实际值没有什么不同。

唯一的区别是它们的视觉表现方式。这对它们的实际情况没有影响。

于 2012-06-29T17:52:19.280 回答