2013-01-24 13 views
22

Przepraszam, jeśli to niewiarygodnie oczywiste, ale nie mam pojęcia, dlaczego to nie działa.jsFiddle: brak połączenia między html i js? Nie można wywołać prostej funkcji z przycisku?

Próbuję utworzyć jsFiddle. Jednak wydaje mi się, że nie mogę dołączyć żadnego z javscript do żadnego z elementów. Na przykład onclick nie wywołuje mojej funkcji js.

Nie ma nic prostszego niż to skrzypce. Kopiuję-wklejam go z edytora W3, gdzie działa dobrze - kliknij przycisk, uzyskaj alert!

<button onclick="myFunction()">Click me</button> 

function myFunction() {alert("sss");} 

http://jsfiddle.net/tpip/NYkQN/2/

Czego mi brakuje tutaj ??

+1

http://stackoverflow.com/questions/5431351/simple-example-doesnt-work-on-jsfiddle – topcat3

+1

To jest dokładny duplikat http://stackoverflow.com/questions/5431351/simple-example-doesnt -work-na-jsfiddle – RoryB

Odpowiedz

36

Wystarczy zmienić sposób blok JavaScript jest załadowany do no wrap (head)

enter image description here

Standardowo jest to, że jest owinięty JS (!) Być uruchamiany po załadowaniu DOM. Oznacza to, że funkcja nie jest zdefiniowana w zasięgu globalnym, ale wewnątrz opakowania. Wbudowane funkcje obsługi zdarzeń działają jednak tylko z funkcjami zdefiniowanymi globalnie!

Po ustawieniu na no wrap (head) JS jest ładowany do <head> i nie jest zawijany.

+2

Dziękujemy! Działa teraz idealnie. Teraz mogę napisać moje prawdziwe skrzypce :) – user984003

+1

Co za kupa, to powinno być domyślne ... – Andrew

Powiązane problemy