51

divJavaScript を使用して一部のブロックのコンテンツを非アクティブにする方法は?

コマンド「有効化/無効化」のボタンがあるとします。また、テキストを含む div ブロックが 1 つあります。「有効化/無効化」ボタンを押すと、「有効化」すると内部のコンテンツを操作できますが、「無効化」するとdivブロック内のコンテンツを操作できなくなります。

div ブロック内に非アクティブなコンテンツを作成するには、コンテンツ div ブロックのコンテンツを編集できないようにする別のレイヤーを配置する必要があると思います。

この種の機能を実現する方法がわかりません。

4

5 に答える 5

100

オーバーレイを使用せずに、 CSSを使用pointer-events: noneして使用できます。div

div.disabled
{
  pointer-events: none;
    
  /* for "disabled" effect */
  opacity: 0.5;
  background: #CCC;
}

参照

于 2013-01-16T19:07:09.297 に答える
-1

jquery を使用すると、次のようなことができます。

// To disable 
$('#targetDiv').children().attr('disabled', 'disabled');

// To enable
$('#targetDiv').children().attr('enabled', 'enabled');

jsFiddle の例を次に示します: http://jsfiddle.net/monknomo/gLukqygq/

また、ターゲット div の子を選択し、「無効な」css クラスをコールアウトとしてさまざまなビジュアル プロパティとともに追加することもできます。

//disable by adding disabled class
$('#targetDiv').children().addClass("disabled");

//enable by removing the disabled class
$('#targetDiv').children().removeClass("disabled");

例として jsFiddle を次に示します: https://jsfiddle.net/monknomo/g8zt9t3m/

于 2013-01-16T19:07:42.413 に答える