2016-10-25 3 views
0

я написал ниже код, чтобы удалить элемент с классом RC-узловом пт (если он присутствует в DOM) через 5 секунд,Дом манипуляция не работает

checkContainer(); 

counter = 1; 
function checkContainer() { 

    alert("checkContainer"); 
    $('.rc-anchor-pt').remove(); 
    $('.rc-anchor-logo-portrait').append('<a href=\"http://www.un.org/en/aboutun/privacy/\" target=\"_blank\">Privacy &amp; Terms</a>'); 
     if($('.rc-anchor-pt').is(':visible')){ //if the container is visible on the page 
      var privacy = $('.rc-anchor-pt').find('a'); 

       } else { 
      if (counter === 1) 
     { 
      setTimeout(checkContainer, 5000); //wait 50000 ms, then try again 
      counter++; 
     } 
     } 
} 

Но ниже линии не вынимая элемент из DOM. Не могли бы вы рассказать мне, в чем причина. Спасибо advance.I бегу внутри document.ready только элемент присутствует на странице -

$('.rc-anchor-pt').remove(); 
+1

ли '.rc-якорь pt' существует в HTML? –

+1

использовать $ (document) .ready() для запуска функции вместо ожидания 5 секунд – Sergiodiaz53

+0

, если ожидание 5 секунд не работает и не будет ждать готовности документа. селектор, скорее всего, ошибочен. –

ответ

1

Я не совсем уверен, что вы пытаетесь сделать с вашим кодом. Вы заявили в своем вопросе, который вы хотите удалить элемент из DOM через 5 секунд ... Вы должны быть в состоянии выполнить это с помощью следующего кода:

$('.rc-anchor-logo-portrait').append('<br><a href=\"http://www.un.org/en/aboutun/privacy/\" target=\"_blank\">Privacy &amp; Terms</a>'); 

setTimeout(function(){ 
    $('.rc-anchor-pt').remove(); 
}, 5000); 

Путь у вас есть код выкладывается, класс rc-anchor-pt будет никогда не будет быть видимым. Тогда у него не было бы никакой цели. Если вы хотите, чтобы функция append запускалась через 5 секунд, просто поместите ее в функцию setTimeout.

Вот скрипка: https://jsfiddle.net/1399u65t/3/

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