私はこれらのdivにこのクラス名がない限り、すべてのdivを閉じるスクリプトを用意しています。次のスクリプトは正常に動作します。Javascript Jquery - 子要素がクリックされた場合は閉じないでください
window.onclick = function(ev){
if((ev.target.className !== 'ddHeader') && (ev.target.className !== 'ddSubmenu')&&
(ev.target.className !== 'ddContainer')&& (ev.target.className !== 'ddItem')){
delay_close_sub();
}
};
これで、私は同じことを子要素で行う必要があります。私はこれに似上記のコードに追加したいと思います:
window.onclick = function(ev){
if((ev.target.className !== 'ddHeader') && (ev.target.className !== 'ddSubmenu')&&
(ev.target.className !== 'ddContainer')&& (ev.target.className !== 'ddItem') &&
ev.target.element !== 'ddHeader > input){
delay_close_sub();
}
};
私が追加:最後にev.target.element ==「ddHeader>入力を」)が、それは動作しません!。どのように私はこの作品を作るだろうか?私はddHeader divの内側の入力フィールドがあるとき「delay_close_sub()関数をトリガしません、それをクリックすることを確認する
感謝を任意の助けのため
素晴らしい作品です!ありがとうございました。 – user982853
これは効率的ではありませんが、実際には非常に非効率です。私は言葉がありません – Esailija
どうやったらいいですか? – ori