2011-09-25 4 views
0

현재 페이지에 DIV 요소를 추가하는 북마크릿을 만들려고합니다.JavaScript 함수를 추가하는 책갈피 북

이 코드는 body.innerHTML에 HTML 코드를 추가하여 올바르게 작동합니다. 이 DIV 요소에는 추가 된 DIV을 숨길 수있는 버튼이 있습니다. 따라서 JavaScript를 통해 JavaScript 기능을 innerHTMLfunction hideDiv()에 추가하려고했습니다.

새로운 JavaScript가 본문에 추가되어 잘 보입니다. 그러나 그것은 효과가 없습니다.

짧은 예 :

javascript:var b = document.body.InnerHTML; b=b+'<input type="button" onclick="javascript:alert("hello")"/>'; document.body.innerHTML = b; 

이 북마크가 클릭 한 경우 경고를 표시하는 버튼을 추가해야합니다. 단추를 추가하지만이를 클릭해도 아무런 변화가 없습니다.

일반적인 문제입니까? 자바 스크립트가 페이지에 자바 스크립트를 추가 할 수 있습니까?

+2

'InnerHTML'이 아니라 'innerHTML'입니다. – ThiefMaster

답변

0

id를 설정하고 요소에 함수를 추가해야한다고 생각합니다. 이처럼 :

javascript:var b = document.body.InnerHTML; b=b+'<input type="button" id="test"/>'; document.body.innerHTML = b; document.getElementById('test').onclick = function() { alert('hi')} 
0

javascript: 접두사는 href 특성 (또는 양식에 대한 action)에 사용된다. onclick 또는 다른 이벤트에서 사용되지 않습니다. javascript:을 제거하면 코드가 정상적으로 작동합니다.

관련 문제