HTML でテキストを選択できないようにするにはどうすればよいですか?

DDD
リリース: 2024-11-10 01:25:02
オリジナル
353 人が閲覧しました

How to Make Text Unselectable in HTML?

選択できない HTML テキストをレンダリングする方法: 詳細な説明

疑問が生じます: Web ページ上のテキストを選択できないようにして、カーソルが表示されないようにする方法ホバー時にテキスト選択カーソルに変更されることはありません。この動作は通常、Stack Overflow Web サイトにあるようなボタンで観察されます。

CSS3 ソリューション

最新のブラウザの場合、CSS3 ソリューションで十分です。

.unselectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
ログイン後にコピー

このスタイルを適用するには、選択不可のクラスをラベルに追加します要素:

<label class="unselectable">Unselectable label</label>
ログイン後にコピー

JavaScript フォールバック

古いブラウザの場合、JavaScript フォールバックが必要です:

function disableSelection(element) {
    if (typeof element.onselectstart != 'undefined') {
        element.onselectstart = function() { return false; };
    } else if (typeof element.style.MozUserSelect != 'undefined') {
        element.style.MozUserSelect = 'none';
    } else {
        element.onmousedown = function() { return false; };
    }
}

window.onload = function() {
    var labels = document.getElementsByTagName('label');
    for (var i = 0; i < labels.length; i++) {
        disableSelection(labels[i]);
    }
};
ログイン後にコピー

jQuery ソリューション

jQuery を使用する場合は、 disableSelection() 関数:

$.fn.extend({ 
    disableSelection: function() { 
        this.each(function() { 
            if (typeof this.onselectstart != 'undefined') {
                this.onselectstart = function() { return false; };
            } else if (typeof this.style.MozUserSelect != 'undefined') {
                this.style.MozUserSelect = 'none';
            } else {
                this.onmousedown = function() { return false; };
            }
        }); 
    } 
});
ログイン後にコピー

それをラベル要素に適用します:

$(document).ready(function() {
    $('label').disableSelection();            
});
ログイン後にコピー

以上がHTML でテキストを選択できないようにするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート