Обеспечить другое поведение JS перед взаимодействием с пользователем - PullRequest
0 голосов
/ 13 февраля 2012

Мой сайт ASP.NET MVC 3 генерирует и HTML со сценариями вокруг моих полей ввода, чтобы обеспечить каскадную функцию раскрывающегося списка.

Например, в моем html-файле есть вызов сценария, подобный следующему:

$ae.ajaxDropdown(

$ae определено в отдельном файле .js.Моя проблема в том, что мне нужны некоторые подписки jQuery parent.change, чтобы они не работали, пока пользователь фактически не начал взаимодействовать со страницей, и, таким образом, вызывал подпрограммы jquery для html-элементов.

Если бы мы могли использовать C # наклиент, я бы просто использовал bool isBeforeInteraction переменную, которую я бы установил на true в начале синтаксического анализа и выполнения javascript, и установил бы на false, когда пользователь фактически запустил манипуляции с элементами.Мои подписки jquery .change будут тогда работать.

Существует ли подобный способ фильтрации кода js (который находится в отдельном файле .js) на основе булевой переменной "всей страницы"?

1 Ответ

0 голосов
/ 13 февраля 2012

Вы можете обработать событие keydown следующим образом:

var isBeforeInteraction = true;
$(document).bind('keydown',
  function(evt) {
    if (isBeforeInteraction) {
      alert ('First User Interaction');
      isBeforeInteraction = false;
    }
  }
);  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...