2010-07-31 1 views
0

я следующий прототип JavaScript кодГде я должен поместить процедуру JavaScript, необходимую только на одной странице?

Event.observe(window, 'load', function() { 
    Event.observe('agreement', 'click', function() { alert("It works") }); 
}); 

Он используется только на одной странице моего сайта, что это лучший способ организовать это?

Я полагаю, что могу поместить его в свой собственный файл и включить его только на эту страницу. Или я могу добавить его в один большой файл, который загружается для всего сайта, но я попытался это сделать и получил ошибку, потому что элемент «соглашение» не существует на всех страницах.

ответ

2

Если вы переместите его в свой собственный файл, на который ссылается на всех страницах сайта, почему бы не просто проверить существование #agreement элемента перед добавлением обработчика событий нажмите:

Event.observe(window, 'load', function() { 
    if($('#agreement') != null){ 
     Event.observe('agreement', 'click', function() { alert("It works") }); 
    } 
}); 

, как говорится , если он когда-либо будет использоваться только на одной странице вашего сайта, я оставил бы его как встроенный javascript, так как это еще один запрос, который браузер должен сделать для ресурса.

Но (всегда есть), но вышеизложенное может привести к проектам, которые трудно поддерживать, так как вы можете получить множество встроенных javascript, посыпанных вашей разметкой.