0

我有一个触发 onchange 事件的选择框(不是通过我的代码,而是通过插件的代码)。该选择框将根据所选项目隐藏/显示下一个框。这个插件隐藏或显示下一个框的方式是通过改变元素的样式。

例如:

如果我选择选项 1。插件触发 onchange 事件并更改下一个框的样式

display:none

display:list-item

一旦项目样式发生变化,我需要选择该项目并使用我自己的代码对其执行其他操作。问题是我的 onchange 是在插件代码之前触发的,所以它找不到任何要选择的项目。

我的代码:

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

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

如果我要再次重新选择选项 1,这将起作用,因为插件功能已经执行过一次。

我尝试将 setTimeout 添加到我的函数中,但这不起作用。所以我想我的函数需要监听样式变化,或者在插件函数之后以某种方式执行......有什么想法吗?我接近这个错误吗?

4

1 回答 1

1

如果您正在寻找可以使用的可见列表项,您可以尝试使用更简洁的选择器而不是样式属性

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