0

我正在尝试构建一个将立即触发的脚本:

  • 在带有 class="eventIndicator" 的 DIV 中,span 有一个“已验证”类(当前为“未验证”)

  • 具有 class="evenIndicator" 的 DIV 的父级具有 style="display: block;" (当前样式=“显示:无;”

例如,我添加了一小段代码摘录。

你认为有可能吗?我尝试过使用 Jquery 但无法成功。谢谢你的帮助。

<div id="hidden3">
    <div id="asset_parameters">
        <div id="Rente_div" style="display: none;">
            <span>Rente:</span>
            <span><input name="Rente" id="Rente" onblur="asset_value(this.id)"></span>
            <div class="eventIndicator">
                <span class="unvalidated">Incomplete</span>
            </div>
        </div>
        <div id="Bouquet_div"  style="display: none;">
            <span>Bouquet:</span>
            <span><input name="Bouquet" id="Bouquet" onblur="asset_value(this.id)"></span>
            <div class="eventIndicator">
                <span class="unvalidated">Incomplete</span>
            </div>
        </div>
        <div id="Valeur_libre_div"  style="display: none;">
            <span>Valeur libre:</span>
            <span><input name="Valeur_libre" id="Valeur_libre" onblur="asset_value(this.id)"></span>
            <div class="eventIndicator">
                <span class="unvalidated">Incomplete</span>
            </div>
        </div>
    </div>
4

3 回答 3

1

你可以轮询它,但它不是很有效。我会改为触发回调,但这是一个轮询片段:

(function poll () {
    var $div = $('.eventIndicator');
    if ($div.find('span.validated').length && $div.parent().is(':visible')) {
        // do something
    } else {
        setTimeout(poll, 500);
    }
}());
于 2013-09-20T23:18:45.267 回答
0

.toggleClass()在事件触发时使用。底线是事件必须触发才能发生。

于 2013-09-20T23:15:07.263 回答
0

show您需要在每次/使用时触发自己的事件hide,然后计算可见元素:

if($('#Rente_div:visible, #Bouquet_div:visible, #Valeur_libre_div:visible').length === 3) alert('OK')

或者你可以用它setInterval来检查这个

// 编辑:哎呀抱歉 - 这篇文章是为你以前版本的问题而写的,但我想你可以根据你的需要调整这个答案

于 2013-09-20T23:16:40.593 回答