2016-10-09 3 views
1

У меня есть интерактивный div, и я хочу, чтобы как-то с javascript или jquery, чтобы иметь возможность нажимать на него автоматически.Нажмите на div с javascript или jquery

Мой ДИВ как это:

<div style="display:none;" id="button">Hello</div> 

Это нажмите способный DIV, когда дисплей изменен на блок Мне нужен скрипт, чтобы сделать это для меня.

Мне нужен сценарий, как, когда он видит, что ДИВ дисплей изменен, чтобы заблокировать то скрипт должен нажать на сНу ид = «Кнопка»

Я попытался это, но это не для того, как я искал в гугле

<script type="text/javascript"> 

$(document).ready(function(){ 
    $('#button').trigger('click'); 
}); 

</script > 
+1

Возможный дубликат [Как программно запускать щелчок по ссылке с помощью jquery?] (Http://stackoverflow.com/questions/2847185/how-to-programmatically-trigger-the-click-on-a-link -using-jquery) – Mohammad

ответ

0

Вот пример в JS:

<div style="display:none;" id="button">Hello</div> 
 

 

 
<script> 
 
    document.addEventListener('DOMContentLoaded', function() { 
 
    var button = document.getElementById('button'); 
 
     
 
    button.addEventListener('click', function() { 
 
     this.style.display = 'block'; 
 
    }) 
 
     
 
    if (button.style.display === 'block') { 
 
     button.click() 
 
    } 
 
    }); 
 
</script >

Update:

Если вам нужно нажать на кнопку после некоторых яваскрипта действий, просто добавьте туда следующие строки:

if (button.style.display === 'block') { 
    button.click() 
} 

UPDATE2:

В представленной странице я нашел способ показать упомянутый div:

function startChecking() { 
    secondsleft -= 1e3, 
    document.querySelector(".load_stream").innerHTML = "Please Wait.. " + Math.abs(secondsleft/1e3) + " Seconds", 
0 == secondsleft && (clearInterval(interval), 
    $(".reloadframe").show(), 
    document.querySelector(".load_stream").style.display = "none", 
    $("#btn_play_s").show() 
    //You need to place it here, after "show" div will be displayed 
    // and display will have value "block" 
) 
} 

Таким образом, вы можете заменить последнюю строку $('#btn_play_s').show().click() вместо $('#btn_play_s').show(), этого будет достаточно.

+0

, но я хочу, чтобы он отображался на дисплее div, например, когда display = block, тогда он должен нажать на него. –

+0

@ronaldocr вы могли бы прояснить «когда он увидит, что дисплей div изменился на блок»? – havenchyk

+0

Я приведу вам пример, теперь на странице у меня есть tht div выше со стилем: у меня нет кода на моей странице, он изменится через 10 секунд, пока не отобразится: none для отображения: block. так что я прошу вас помочь мне найти код, чтобы сделать это так, когда стиль стал отображаться: блок, тогда ваш код должен щелкнуть по этому div –

0

Просто используйте $('#button').click(); где угодно.

Если вы хотите вызвать это событие, когда сначала изменилось отображение кнопки, вам необходимо создать событие для этого (потому что Jquery не имеет отображаемого измененного события). А затем вызвать его ваша собственная личность:

$('#button2').on('click',function(){ 
 
    $('#button') 
 
    .css('display','block') 
 
    .trigger('isVisible'); 
 
}); 
 

 
$('#button').bind('isVisible',function() { 
 
    alert('Clicked...!'); 
 
}); 
 

 

 
$(function(){ 
 
    $('#button').click(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="button" id="button2" value="display the button"/> 
 
<div style="display:none;" id="button">Hello</div>

Смежные вопросы