0

LIサムネイルの1つをクリックしようとしています。このためのHTMLコードは次のとおりです。

<ul id="thumbImgs" class="list" style="height: 250px;">
   <li id="04_BOARDWALK_VIEW.jpg" data-wh="1000|700|testing 3" class="item">
      <img src="cms/img/uploaded/04_BOARDWALK_VIEW_tmb.jpg" width="120" height="120" class="imgStyle" style="opacity: 0.5;">
   </li>
   etc etc....
</ul>

私はすでに試しました:

$('#04_BOARDWALK_VIEW.jpg').click();

$("#thumbImgs li #04_BOARDWALK_VIEW.jpg").click();

$("#thumbImgs li 04_BOARDWALK_VIEW.jpg").click();

しかし、それはうまくいかないようです。私は何が欠けているでしょうか?

4

2 に答える 2

7

.は特殊文字であるため、エスケープする必要があります。

$('#04_BOARDWALK_VIEW\\.jpg')

また、これを行わずに画像にクリック ハンドラーを追加するにはどうすればよいのでしょうか。

元のセレクターは、 ofとclass of#04_BOARDWALK_VIEW.jpgを持つ要素を取得します。id#04_BOARDWALK_VIEWjpg

于 2013-01-14T20:54:56.140 に答える
7

問題は、ID のピリオドです。これは一般的に不適切な方法ですが、セレクターでピリオドをエスケープすると、jQuery で克服できます。次のようにします。

$("#04_BOARDWALK_VIEW\\.jpg").click();

JavaScript のエスケープ文字のように二重のバックスラッシュが必要であることに注意してください。その\ため、jQuery がピリオドをエスケープするために必要な実際のバックスラッシュを実際にエスケープするには、1 つのバックスラッシュが必要です。繰り返しますが、ID にピリオドをまったく使用しないことをお勧めします。

于 2013-01-14T20:55:14.400 に答える