У меня есть событие щелчка, с которым связано мое действие по переходу на определенный URL-адрес, а затем показать/скрыть кнопку. Я использую это:
ViewManager.js
$("#btn").on("click", function(event){
window.location.href= '#test.html';
}
и после того, как я перейду на эту страницу, у меня есть кнопка, которую мне нужно скрыть в зависимости от target.id (в данном случае это btn
). Если btn
является идентификатором цели, я скрываю кнопку, иначе я показываю кнопку, как показано ниже:
account.js
if (event.target.id == 'btn'){
$('#submit-account-detail').css('display', 'none');
else {
$('#submit-account-detail').css('display', 'block');
}
Теперь проблема в том, что хром отлично обрабатывает глобальное событие, но firefox выдает ошибку:
ReferenceError: event is not defined
Я передал событие в качестве параметра, прежде чем перейти к другому URL-адресу. Поскольку firefox не обрабатывает события глобально, он выдает ошибку. Я попытался найти источники, и они предложили передать событие в качестве параметра для события клика (уже сделано). но как сделать событие видимым после навигации по страницам?
РЕДАКТИРОВАТЬ-------------------
Я сделал что-то подобное в сценарии ViewManager.js: $("#btn").on("click", function(event){
targetId = window.event;
window.location.href= '#test.html';
}
а затем я проверил условие в сценарии account.js:
if (targetId && targetId === 'btn'){
$('#submit-account-detail').css('display', 'none');}
он отлично работает, когда у него определен targetId, но выдает ReferenceError: targetId is not defined
, когда он targetId != 'btn'
... Я неправильно объявляю переменную??
event
? Вы показали нам параметр функции, который является локальным для этой функции. Он ни в коем случае не может быть доступен для кода в другом файле сценария. - person Bergi   schedule 06.10.2014