2

この jsfiddleでこれまでに行ったことの簡単な例を作成しましたが、できるようにしたいのは、マウスを div の上に移動し、テキストボックスがある div のポイントをクリックすることです (この例)、テキスト ボックスを操作せず、div のみを操作します。テキストボックスの上に目に見えないブランケットがあり、ブランケットのクリックイベントをトリガーしても、テキストボックスにフォーカスが当たらない場合と同様です。

私は少し調べてみましたが、多くの人がこれについて尋ねているようには見えませんが、含まれている div の透明な画像 (1x1 ピクセル) を使用して、そのように繰り返すことができると言っている人を見つけました

background-image: url('transparent.png');
background-repeat: repeat;

しかし、役に立たない。div を「クリックスルー」することは引き続き可能です。設定もしてみた

background: rgba(170, 170, 170, 0);

opacity: 0;

透明なdivの、そしてそれはまだクリックスルーでした. また、いくつかのz-indexをいじりましたが、どちらも違いはありませんでした(ブランケットのz-indexをテキストボックスのz-indexよりも高い値に設定しました)。

4

4 に答える 4

1

preventDefault() を .transparent に追加しても機能しません。

@Prisoner によって提案されたソリューションを使用できますが、すべてのブラウザーでサポートされていない content 属性を使用しています。クリックするとボックスの選択を解除するこのjQueryソリューションを使用できます-

jQuery('INPUT').click(function (e) {
    $(this).blur();
});
于 2013-09-13T11:26:56.150 に答える
1

css z-index をブランケット div に 10 や 15 などの大きな値に設定し、位置プロパティを絶対または相対に指定する必要があります。これは、z-index が配置された要素でのみ機能するためです。

于 2013-09-13T11:28:11.533 に答える