0

誰もがこの恐ろしいコードの塊を取り除くためのセレクターを提供できますか?

// img is the image element...
var descriptionContent = $(".descriptionContent", img.parent("td").parent("tr").next("tr"));

htmlは次のようになります。

<table>
    <tr>
        <td><img /></td>
    </tr>
    <tr>
        <td><div class="descriptionContent" /></td>
    </tr>
    <!-- Repeat n times -->
</table>

ユーザーがimgをクリックした場合、次の(そして次の).descriptionContent要素を取得する必要があります。

ありがとう、
K

4

2 に答える 2

5

画像を何かでラップするのが心配なので、これを試してください:

var descriptionContent = $(".descriptionContent", img.closest("tr").next("tr"));

最も近いコマンドは、指定されたセレクターに一致する最も近い祖先を見つけます。 こちらをご覧ください。

于 2009-09-09T15:03:30.587 に答える
0

これが一般的にどのように構成されているかについて、多くのことを耳にすることになると思います。テーブルをなくせば、この問題の多くは解消されます。

何かのようなもの:

<div class="imgAndContent">
  <img src="blah.jpg">
  <span class="someDescription">Description.</span> <!-- or div, you choose based on your need -->
</div>

次に、簡単に行うことができます...

var descriptionContent = $(this).next();

ユーザーがクリックすると...

于 2009-09-09T15:03:32.243 に答える