2011-10-16 2 views
0

chrome에서 location.href를 두 번 설정

location.href=document.getElementById("link1").href; 
location.href=document.getElementById("link2").href; 
링크와 관련된 스크립트를 실행하려면 다음과 같이하십시오.

<a id="link1" href="javascript:..."> 
<a id="link2" href="javascript:..."> 

코드는 Firefox에서 제대로 작동하지만 Chrome에서는 마지막 location.href 명령 만 사용합니다. 자바 스크립트 코드의 두 번째 부분)이 실행됩니다. 처음과 둘 다 강제로 실행하려면 어떻게해야합니까?

+0

실제로 * href 속성에 * 무엇이 있습니까? 'javascript :'라는 접두사가 있기 때문에 포함 된 JS에 오류가 없는지 확인 했습니까? 또한 클릭 핸들러를 사용하십시오. 깨끗하고 쉽게. –

+0

HUH? 두 location.href 호출을 호출하고 있습니까? 그게 효과가 없을거야! 경쟁 조건입니다. xmlhttprequest 객체에 대해 알아보십시오! 예. – epascarello

+0

페이지와 상호 작용하는 것은 내 것이 아닙니다. 알고있는 페이지로 테스트 할 수 있습니다. 예 : link1
link2 . 나는 클릭 핸들러를 알고있다. 그러나 FF와 Chrome 모두 동일한 코드를 사용할 수 있기 때문에 위의 해결 방법이 더 좋습니다. – tic

답변

1

자바 스크립트 코드를 기능에 넣어보세요.

그런 다음 링크를 클릭 할 때뿐만 아니라 필요할 때마다 해당 기능을 호출 할 수 있습니다. 이것은 URL보다는 코드를 실행하는 훨씬 더 안정적인 방법입니다.

+0

죄송합니다, 아무 것도 변경되지 않습니다. – tic

+0

기능/실제 코드를 게시 하시겠습니까? 이것이 작동하지 않아야하는 이유는 없습니다. – xthexder

+0

이것이 올바른 방법입니다. OP를 위해 작동하지 않는 경우 제대로 작동하지 않기 때문입니다. xthexder에 동의합니다. 코드를 게시하십시오. – jfriend00

2

비슷한 상황이있었습니다. 나는 setTimeout 함수를 사용하여 두 번째 비트를 지연시키는 방법으로 문제를 해결했으며 정상적으로 작동합니다.

관련 문제