1

これが私のJavaScriptです:

$(function() {
$(".image2").click(function() {var image = $(this).attr("rel");
$('#image2').hide();
$('#image2').fadeIn('slow');
$('#image2').html('<embed height="253" width="440" wmode="transparent" src="' + image + '"></embed>');
return false;
 });
});

$(document).ready(function() {
 $("#thumb2 a").each(function() {
 var image = $('#image2 embed').attr('src');alert(image);
 if(this.attr('rel') = image ) 
 $(this).addClass("open");
 });
});

と私のhtml:

<style>
 #thumb2 img { border:1px solid #dfdfdf; padding:3px; height:29px; margin-top:5px; opacity:0.3; }
#thumb2 img:hover { border:1px solid #fc7200; opacity:1.0; }
 .image2.open { border:1px solid #fc7200; opacity:1.0; }
</style>

<div id="image2"><embed height="253" width="440" wmode="transparent" src="images/kameralar.swf"></embed></div>
<div id="thumb2">
<a href="#" rel="images/kameralar.swf" class="image2" ><img src="images/t1.png" border="0"/></a>
<a href="#" rel="images/standalone.swf" class="image2"><img src="images/t2.png" border="0"/></a>
<a href="#" rel="images/mobil.swf" class="image2"><img src="images/t3.png" border="0"/></a>
<a href="#" rel="images/3b2.swf" class="image2"><img src="images/t4.png" border="0"/></a>
<a href="#" rel="images/canon.swf" class="image2"><img src="images/t5.png" border="0"/></a>
<a href="#" rel="images/indigovision.swf" class="image2"><img src="images/t6.png" border="0"/></a>
</div>

rel属性がembedsrc属性と同じリンクにクラスを追加できません...jqueryが追加されました...plssmb help!

4

1 に答える 1

3

問題は.attr()、DOM要素で使用できるメソッドではなく、=両方を比較するのではなく、左側を設定(または試行)することです。最初のものを修正するには、それをラップする必要があるので、これは次のとおりです。

if(this.attr('rel') = image )

する必要があります:

if($(this).attr('rel') == image)

==また、セットではなく、比較のためにダブルに注意してください。


ただし、より短く効率的なソリューションは次のようになります。

$(document).ready(function() {
  var image = $('#image2 embed').attr('src');
  $("#thumb2 a[rel='" + image + "']").addClass("open");
});
于 2010-12-06T13:07:39.017 に答える