2014-11-17 2 views
1

페이지가로드되는 즉시 자바 스크립트를 통해 페이지의 모든 <a href=""></a>을 비활성화하고 싶습니다.페이지로드시 링크 비활성화, 5 초 후 링크 활성화 - 자바 스크립트

그런 다음 5 초를 기다린 후 <a href=""></a>을 사용하고 싶습니다.

나는 성공없이 몇 가지 방법을 시도했다. (검색 중이거나 작동하지 않는 채로 지난 30 분 동안 인터넷 검색).

자바 스크립트로 이것을 수행하는 방법을 알아낼 수 있습니까?

답변

0
// Function that does nothing, but prevents default event handler 
function disableLink(e) { 
    e.preventDefault(); 
}; 

window.onload = function() { 
    // Bind above event handler to all anchors 
    var els = document.getElementsByTagName('a'); 
    [].forEach.call(els, function(el, i) { 
     el.addEventListener("click", disableLink); 
    }); 
    // Remove it in 5 seconds 
    setTimeout(function() { 
     var els = document.getElementsByTagName('a'); 
     [].forEach.call(els, function(el, i) { 
      el.removeEventListener("click", disableLink); 
     }); 
    }, 5000); 
}; 

DEMO

+0

@Amadan 들으, 나는 재 작성 권리를 얻었 는가? – Barmar

+0

그래, 모두 괜찮아 :) – Amadan

+0

기본 신선한 HTML 파일로도이 작업을 수행 할 수 없습니다 ... 단순히 스크립트와 'link'을 실행하고 있는데 작동하지 않습니까? – daemon