javascript - 複数 - jquery 要素 複製




DIV要素と[duplicate]内のすべてを無効にする方法 (4)

これを試して!

$("#test *").attr("disabled", "disabled").off('click');

私は上記のjqueryを使用して表示されませんが、あなたはタグとして記載されています。

この質問には既に回答があります:

私はDIVを無効にする必要があり、すべてはJavascriptを使用してコンテンツです。 私は簡単なことをして誓うことができます

<div disabled="true"> 

以前は私のために働いていましたが、何らかの理由でそれはもはや機能しません。 なぜか分からない。

IE10では、テキスト "Click Me"はグレー表示されず、クリックハンドラはまだ動作します。

私は実際にIE10のためにこれを働かせる必要があります。 以下は私のコードです。 前もって感謝します。

<html>
    <script>
         function disableTest(){

            document.getElementById("test").disabled = true;
            var nodes = document.getElementById("test").getElementsByTagName('*');
            for(var i = 0; i < nodes.length; i++){
                nodes[i].disabled = true;
            }

         }


     </script>

<body onload="disableTest();">
   <div id="test">
       <div onclick="alert('hello');">
           Click Me
       </div>
   </div>

</body>
</html>

クリックイベントを無効にするために「無効」を使用することはできません。 私はIE6-9でどのように動作していたのかわかりませんが、Chromeでは動作しませんでした。IE10ではうまく動作しません。

onclickイベントを無効にするには、キャンセルするイベントをアタッチします。

;(function () {
    function cancel () { return false; };
    document.getElementById("test").disabled = true;
    var nodes = document.getElementById("test").getElementsByTagName('*');
    console.log(nodes);
    for (var i = 0; i < nodes.length; i++) {
        nodes[i].setAttribute('disabled', true);
        nodes[i].onclick = cancel;
    }
}());

さらに、ノードで「無効」を設定しても、必ずしも属性が追加されるわけではありません。setAttributeを使用してください。

http://jsfiddle.net/2fPZu/


私はそれについての経験はありませんが、 BlockUIはあなたが探しているものです。 試してみてください。


私はインラインスクリプトを止めるのが難しいと思うのですが、代わりにこれを試すことができます:

<div id="test">
    <div>Click Me</div>
</div>

スクリプト:

$(function () {
    $('#test').children().click(function(){
      alert('hello');
    });
    $('#test').children().off('click');
});

困ったことをして助けてください

.off()の詳細を読む





css