0

onchange イベントをトリガーする選択ボックスがあります (私のコードではなく、プラグインのコードによって)。その選択ボックスは、選択したアイテムに応じて次のボックスを非表示/表示します。このプラグインが次のボックスを非表示または表示する方法は、要素のスタイルを変更することです。

例えば:

オプション 1 を選択すると、プラグインは onchange イベントをトリガーし、次のボックスのスタイルを

display:none

display:list-item

アイテムのスタイルが変更されたら、そのアイテムを選択し、独自のコードで他の操作を行う必要があります。問題は、プラグインのコードの前に onchange がトリガーされているため、選択するアイテムが見つからないことです。

私のコード:

("#input").change(function(){

var mymatch = $("li[style='display: list-item;']");});

オプション 1 を再度選択すると、プラグイン関数が既に 1 回実行されているため、これは機能します。

関数に setTimeout を追加しようとしましたが、うまくいきませんでした。したがって、私の関数はスタイルの変更をリッスンするか、何らかの方法でプラグイン関数の後に実行する必要があると思います...何かアイデアはありますか? 私はこれに間違って近づいていますか?

4

1 に答える 1

1

使用できる可視リスト項目を探している場合は、スタイル属性の代わりに、より簡潔なセレクターを試すことができます

$('li:visible') 
于 2013-08-15T18:28:32.430 に答える