これは、ネイティブ JS で書かれた星評価プラグインです。 for(var k = 0)... セクションを抽出して that.getStarPoint.call(this, point, active)
まで実行すると、この部分は機能しません。this this point to star [ i]、star[i] と star[k] はどのようにして同じ効果を持つことができますか?
html: (星は一時的にカラーブロックに置き換えられます)
リーリーjs:
リーリー女神的闺蜜爱上我2017-06-30 10:00:07
これを getStarPoint() に結び付けるのはあまり意味がないように感じます。現在の要素に加えて、前のすべての要素をアクティブに設定する必要があるため、ループしてからstar[k].className = active;
为情所困2017-06-30 10:00:07
that
作为getStarPoint
的上下文,写作that.getStarPoint.call(that, point, active);
,此处that
をStarインスタンスとみなした方が良いと思います。
欧阳克2017-06-30 10:00:07
「star[i] と star[k] は同じ効果がある」という意味がよくわかりません。 onmouseover がどの星であるかを知っている場合、クロージャを使用して i を渡すことができます:
for(var i = 0; i }