0
$(document).ready(function() {
    $(".table_class table td").hover(function() {
        $(".table_class table td a").filter(function() {
         showinTitle($(this));
        });
    });
});

function showinTitle($Object){
    $Object.prop('title', $Object.html());
}

私が必要とするのは、長いテキストの場合、オーバーフロー隠しとテキストオーバーフロー省略記号を指定したことです。

when i hover は、ホバー時にタグ<td>を除くすべての値をタイトルに表示する必要があることを意味します<a>

4

2 に答える 2

0
function showinTitle($Object){
    var title = $Object.html();
    var wrapped = $("<div>" + title + "</div>");
    wrapped.find("a").remove();
    $Object.prop('title', wrapped.html());
}
于 2013-09-17T05:46:09.240 に答える
0

jQueryフィルター関数は、条件に基づいてセットから要素を削除するためのものであるため、この問題には使用しないでください。

要素のコンテンツがいくつかのアンカー タグを含む単純なテキストであり、td のようなtdタイトルを表示したい場合は、td のテキストを使用してタイトルを生成できます。"title with link"<td>title with <a>link</a></td>

$(document).ready(function() {
  $(".table_class table td").each(function() {
    $(this).prop('title', $(this).text())
  })
})

各 td のタイトルにアンカー タグのコンテンツ以外のすべてを表示させようとしている場合 (つまり、"title with"のような tdのタイトルを表示したい場合<td>title with <a>link</a></td>)、Arvind の提案と同様のことを行う必要があります。 :

$(document).ready(function() {
  $(".table_class table td").each(function() {
    var contents = $("<td>" + $(this).html() + "</td>");
    contents.find("a").remove();
    $(this).prop('title', contents.text())
  })
})

これは、ドキュメントがロードされるときに各 td をループし、その一時的なクローンを作成します。その後、アンカー タグがクローンから削除され、td のタイトルがクローンの (クリーンな) コンテンツに設定されます。

于 2013-09-17T05:59:25.250 に答える