2013-02-14 3 views
3

У меня есть сценарий, который запускается onclick, но он не работает, когда я использую изображение, работает только кнопка. Вы можете увидеть пример на http://thomaswd.com/maze. Нажмите кнопку «влево», затем кнопку «вниз», и оба они работают. Но по какой-то причине стрелка вправо не работает. Пожалуйста помоги. Благодаря!Изображение onclick вместо кнопки на клике?

+0

правая кнопка работает, но он бросает ошибку JS, 'Uncaught TypeError: не определено не function' –

+0

да ... Я не знаю, как это исправить, я промежуточный Javascript кодировщик –

+0

TypeError: право не является функцией [Break On This Error] \t right() – Shridhar

ответ

2

Измените идентификатор с 'права' на что-то еще. Я не совсем уверен, почему это не удается, но, видимо, внутри html, так как «right» - это id, он скрывает функцию right().

В Chrome отладчик, я изменил идентификатор «г» и кнопка работает, хотя он огромен из-за CSS не соответствует больше :)

Как было отмечено других, «вверх» и «вниз» кнопки работают, и это потому, что их идентификаторы являются «верхними» и «нижними».

EDIT:

А вот explanation, очень странный вопрос :)

+0

спасибо, это сработало! –

1

Я немного запутался, почему right не работает, когда up делает при тех же обстоятельствах, но мне кажется, что вы можете получить его на работу, связываясь с помощью JavaScript (который вы действительно должны делать в любом случае) вместо используя onclick.

$("#right").on('click', right); 
+0

nope, не работает –

+0

@ user2034878 попробуйте обернуть это в '$ (document) .ready (function() {' –

2

Странно, я не понимаю, почему right() не работает, но работает, если я переименовать функцию другим именем.

Демо: http://jsfiddle.net/5b3Ez/

Rename right() функцию с другим именем и надежда, что помогает сейчас.

+0

спасибо, это сработало! –

0

Вместо right(), просто использовать window.right().

В этом контексте я попробовал:

console.log(this.right===right, this.right===window.right, right===window.right); 

и отображает true false false, но в случае с другими стрелками, это false false true. Объяснение, на которое указывает Павел Хонекке, указывает на проблему.

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