3

ハイライトとは、マウスをテキストの上にドラッグしたときにテキストに対して行うことを意味します。imgur.com を使用している場合は、私が何を求めているかがわかります。これについてはどこにも何も見つかりません。イライラします。ヘルプ?

編集:わかりました、私はこれを十分に明確にしたと思いましたが、そうではないと思います. ホバー時に背景色を変更したいという意味ではありません。それは些細なことです。しかし、ページにテキストがあり、テキストをクリックしてマウスをドラッグするか、ctrl + A を押して、背景色を変更し、テキストをコピーできるようになったときは知っていますか? ほら、ハイライト?選択中?背景色を変更することでそれが起こっているように見せたくありません。実際に起こりたいのです。imgur.com に画像をアップロードすると、私の言いたいことがわかるでしょう。アップロードした画像へのリンクにカーソルを合わせると、テキストが選択され、コピーできることに注目してください。

これが、これについて何かを見つけるのが非常に困難だった理由です。私が得るのは、背景色を変更する方法の結果だけです。

4

7 に答える 7

2

これらの回答を mouseenter イベントと組み合わせる必要があります。

function selectElementText(el, win) {
    el.focus();
    win = win || window;
    var doc = win.document, sel, range;
    if (win.getSelection && doc.createRange) {
        sel = win.getSelection();
        range = doc.createRange();
        range.selectNodeContents(el);
        sel.removeAllRanges();
        sel.addRange(range);
    } else if (doc.body.createTextRange) {
        range = doc.body.createTextRange();
        range.moveToElementText(el);
        range.select();
    }
}
window.onload = function() {
   var element = document.getElementById('TheElementToHighlight');
   element.onmouseover = function(e) {
       e = e || window.event;
       var target = e.target || e.srcElement;
       selectElementText(target);
   };
};

selectElementText 関数で jQuery イベントを使用できますが、他の応答からの selectElementText の jQuery バージョンは使用しません。これは、機能検出ではなくブラウザー スニッフィングを使用するためです。

于 2011-04-15T02:10:56.663 に答える
1

これは関連する場合と関連しない場合があります。

CSS:

::-moz-selection{ background: #B2263A; color:#fff; text-shadow: none; }

::selection { background:#B2263A; color:#fff; text-shadow: none; } 

これにより、ハイライトの色が変わります。

于 2010-10-29T16:57:49.947 に答える
0

IEの場合は、まだ使用できると思います

window.clipboardData.setData('text',text);

(使用前に、window.clipboardData プロパティと、場合によっては typeof window.clipboardDatasetData も確認してください)。

FFに関しては、以前は回避策として使用できるフラッシュに関するハックがありましたが、フラッシュ10の時点で、その道も閉鎖されています. これは、フラッシュの例へのリンクです。フラッシュのバージョンによって不満が異なるように見える人もいます。

http://www.logiclabz.com/javascript/copy-to-clipboard-with-javascript-on-mozilla-firefox-and-ie.aspx

于 2010-03-15T20:44:22.893 に答える
-1

ホバーでjQueryのドキュメント/例をチェックしてください:

http://api.jquery.com/hover/

于 2010-03-14T22:09:08.370 に答える
-1

css 疑似クラスを使用:hover http://www.w3schools.com/CSS/css_pseudo_classes.asp

于 2010-03-14T22:04:16.340 に答える
-1
<style type="text/css">
    .hoverable:hover {
        background-color: yellow;
    }
</style>

<p>This is some regular text, but if you <span class="hoverable">hover over this bit</span> it will get a yellow background.</p>
于 2010-03-14T22:05:00.703 に答える
-1
a {
    color: red
}

a:hover {
    color: blue
}

またはあなたも行うことができます

#myDiv {
    background-color: red
}

#myDiv:hover {
    background-color: blue
}

IE を見てください。

于 2010-03-14T22:05:17.957 に答える