2

画面にアイテムを描画するためにラファエルを使用しています。と に含まれる描画オブジェクトのコンテナがdivありoverflow: scrollます。ユーザーが描画している場合、IE 7/8を除くすべてのブラウザでスクロールしません。ただし、IE 7/8 では、ユーザーがドラッグしている (線を描いている) 場合、ユーザーが端に近づくと自動的にスクロールします。jQuery のヘルプを見つけてonscroll、div のイベントをオーバーライドしようとしましたが、うまくいきませんでした。

jQuery を使用していないため、追加できません。

4

1 に答える 1

2

ウィンドウ内のテキストを「選択」することによってスクロールが発生することがあります(このSOページをクリックして上から下にドラッグして、私の意味を確認してください)。jsFiddleの例またはサンプル コードを見ないと、これが問題であるかどうかは説明からわかりませんが、選択を無効にしてみてください。

あなたが言及したように、jQueryはあなたの選択肢ではありません。もしそうなら、あなたはただ使うでしょうdisableSelection()

バニラ Javascript ソリューションの場合は、次を試してください。

function disableSelection(target) {
    if (typeof target.onselectstart != "undefined") { //IE
        target.onselectstart = function () {
            return false;
        };
    } else if (typeof target.style.MozUserSelect != "undefined") { //Firefox 
        target.style.MozUserSelect = "none";
    } else { //All other ie: Opera
        target.onmousedown = function () {
            return false;
        };
    }
    target.style.cursor = "default";
}

window.onload = function () {
    disableSelection(document.body);
};

ソース (わかりやすくするために少し変更): Javascript を使用してブラウザーでの選択を無効にする

于 2013-03-15T14:57:17.947 に答える