2016-07-03 2 views
0

기본적으로 링크 디렉토리를 만들고 싶습니다. 링크를 클릭 할 때마다 링크 타이머가 다시 시작됩니다.곱하기 onclicks에 대한 동일한 자바 스크립트 실행

<Script> function countdown(elementName, minutes, seconds) { 
    var element, endTime, hours, mins, msLeft, time; 

    function twoDigits(n) { 
    return (n <= 9 ? "0" + n : n); 
    } 

    function updateTimer() { 
    msLeft = endTime - (+new Date); 
    if (msLeft < 1000) { 
     element.innerHTML = "countdown's over!"; 
    } else { 
     time = new Date(msLeft); 
     hours = time.getUTCHours(); 
     mins = time.getUTCMinutes(); 
     element.innerHTML = (hours ? hours + ':' + twoDigits(mins) : mins) + ':' + twoDigits(time.getUTCSeconds()); 
     setTimeout(updateTimer, time.getUTCMilliseconds() + 500); 
    } 
    } 


    element = document.getElementById(elementName); 
    endTime = (+new Date) + 1000 * (60 * minutes + seconds) + 500; 
    updateTimer(); 
} 
</script> 

<p> 
<a onclick='countdown("countdown", 
120,0);' href="https://www.bing.com/" target="_blank">Bing</a> 
<div id="countdown"></div> 
</p> 

<p> 
<a onclick='countdown("countdown2", 
120,0);' href="https://www.google.com.au/" target="_blank">Google</a> 
<div id="countdown"></div> 
</p> 

문제는 하나의 카운트 다운 만 실행한다는 것입니다.

각 링크마다 각자 스크립트가 없어도 자체 타이머가있는 간단한 방법이 있습니까?

+0

구문 오류 동일한 ID 카운트가 대신 ID의 두 구성 요소를 지칭의 onclick = "카운트 (이, 120,0) 클래스 = '카운트'와 온 클릭 기능 사용을 대체 안; –

+0

카운트 다운 (this, 120,0)이 클릭 된 요소를 처리합니다. 희망이 당신을 위해 작동 :) –

답변

0

카운트 다운에 다른 div id를 사용하십시오.

<a onclick='countdown("countdown1", 
120,0);' href="https://www.bing.com/" target="_blank">Bing</a> 
<div id="countdown1"></div> 
</p> 

<p> 
<a onclick='countdown("countdown2", 
120,0);' href="https://www.google.com.au/" target="_blank">Google</a> 
<div id="countdown2"></div> 
</p>