1

title非常に単純な JQuery を使用して、要素の属性に格納されたテキストを使用してホバリング ツール ヒントを作成しています。問題なく動作していますが、ブラウザのデフォルトのtitle動作を同時に (またはホバー時にわずかに遅れて) 停止する必要があります。

ここに画像の説明を入力

.on()は最新の機能を使用しようとしていますが (私は知っています!)、JQuery の機能は最善の方法ではないかもしれません。

現在、既存の値をクリアするtitleと、実際のツールチップが表示されますが空です。これは、マウスが要素の上にある間、コードが継続的に実行されるためだと思います。

ここに画像の説明を入力

ブラウザのテキストが表示されないようにする方法を誰かが提供できますが、 onmouseouttitleの元の値を復元できますか? titleXHTML1.1 と互換性のある JQuery 1.10.1+ で動作するコードが必要です。

ありがとう。

    $(document).ready(function () {
        $('<div/>', { id: 'ttfloat', 'class': 'tooltip' }).appendTo('body');
        BuildTipsV3();
    });

    function pageLoad() { // fired by ASP.NET after partial postback
        BuildTipsV3();
    }

    //var temptt;

    function BuildTipsV3() {
        $("[title]").on({
            mouseenter: function () {
                var o = $(this).offset();
                var y = o.top + 18;
                var x = o.left;
                temptt = $(this).attr("title"); // temp storage
                $(this).data('title', temptt);
                //$(this).attr('title', '');
                var tooltip = temptt;
                tooltip = tooltip.replace(/(\r\n|\n|\r)/gm, "<br/>");
                $("#ttfloat").css({top:y, left:x})
                             .html(tooltip)
                             .show();
            },
            mouseleave: function () {
                $("#ttfloat").hide();
                $(this).attr('title', $(this).data('title')); // reset for accessibility
            }
        });
    }
4

2 に答える 2

1

$(selector).removeAttr('title');目的の結果を達成するために使用します。

于 2013-07-16T14:29:38.963 に答える