2011-01-09 4 views
3

Я пытаюсь запустить следующий код, написанный на моей локальной машине:код работает в jsFiddle, но не в браузере

http://www.jsfiddle.net/WShdx/3/

Функционально (игнорировать сломанные изображения в предыдущей и следующей кнопке , и основные изображения неправильного размера) функция click/hover работает правильно в jsfiddle. Однако на моем локальном компьютере он вообще не работает.

Для всех намерений и целей кода идентичен, за исключением локальной копии имеет эту головную часть для загрузки в файлах JavaScript/CSS, которые содержатся в jsfiddle страницы:

<head> 
    <title>Jquery Wizard</title> 
    <link href="style.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> 
    <script src="wizard.js" type="text/javascript" ></script> 
</head> 

Есть ли какая замечательная функция jsFiddle, который делает мой код волшебным образом, или я что-то пропущу здесь?

+0

Что значит, что он вообще не работает? Какими ошибками являются отчеты отладчика? – jmort253

+0

Дайте нам что-нибудь, что-то или что-то в этом роде, на данный момент нет способа сказать, почему он не работает. Является ли ваш внешний js в одной папке? Вам нужно использовать https, вместо этого попробуйте http для jQuery cdn. Попробуйте запустить его через валидатор. –

+0

Возможно, это проблема безопасности; онлайн-код имеет разные разрешения в разных браузерах, чем локальный код, особенно в отношении доступа из разных доменов. – Phrogz

ответ

12

Вы решили запустить скрипт-код «onload» на jsFiddle, это разница.

Без загрузки он не найдет $('area'), потому что ваш скрипт находится внутри <head>, где элементы внутри <body> до сих пор неизвестны.

+1

Спасибо за ответ! Получил это работать, оценил это. Я получил его, добавив «$ (window) .load (function() {<остальная часть jquery>}». Если у кого-то еще такая же проблема, эта функция ждет, пока остальная часть страницы не загрузится до запуска. Д-р Молле сказал, что мой сценарий не работал, потому что он работал до загрузки страницы и искал элементы, которые еще не были созданы. – Jascination

+1

Также можно просто поместить сценарий thze в конец тела. Преимущества: все элементы известны и скрипт загружается позже, поэтому возможно, что сама страница будет показана быстрее. –

+5

Помните, что вы всегда можете загрузить черновик (ctrl + shift + Enter) и посмотреть исходный код, сгенерированный jsFiddle – zalun

0

Я также советую всем, кто сталкивался с такими ошибками, использовать firebug или любой инструмент отладки, отлаживать скрипт всякий раз, когда возникают такие проблемы. Могут быть очень простые, но разочаровывающие проблемы, такие как ошибка Uncaught SyntaxError: Unexpected token ILLEGAL. Отладчикам очень удобно!

Смежные вопросы