2012-07-29 2 views
1

JavaScript 기능을 실행하려면 두 번 클릭해야하는 곳에 문제가 있습니다. 버튼의onclick : div를 숨기거나 표시하려면 두 번 클릭해야합니다.

HTML :

<input type="button" id="logintrigger" value="Log In" onClick="hideshow();"/> 

자바 스크립트 :

function hideshow() { 
    var toggle = document.getElementById('logincontainer'); 
    toggle.style.display = toggle.style.display == "none" ? "block" : "none"; 
} 

내가 주변에 검색되었고, 도움이 아무것도 발견하지 않았습니다.

감사합니다.

답변

2

표시 속성의 초기 상태가 비어있을 가능성이 큽니다. 그래서 당신이 명시 적으로 그것을 바꿀 때까지 -이 js 함수는 ""얻습니다.

2

= 스타일 적용 "디스플레이 : 블록" 명시 적으로 logincontainer하기를 한 후 다음 줄 변경 : toggle.style.display = toggle.style.display == "블록"? "없음": "차단";

+0

안녕하세요, 빠른 답변 주셔서 감사합니다. 페이지를 클릭 할 때 숨길 수있는 방법을 알고 있는지 궁금합니다. 나는 시도했다 : document.onclick = function() { var toggle = document.getElementById ('logincontainer'); toggle.style.display == "없음"; } – user1512677

+0

@ user1512677 : 로그인 컨테이너 외부를 클릭하면 숨길 수 있습니다. –

+0

@ user1512677 : 네, 알아 냈습니다. ** logincontainer ** 태그 내부에서이 함수를 호출하십시오 ** onmouseover **. 내 말은, logincontainer라는 ID를 가진 텍스트 박스가 있다면, 다음과 같이 입력 유형 = "텍스트"id = "logincontainer"** onmouseover = "--- 토글 표시하려면 ---"** /> ​​ –

관련 문제