Я создал somefile.js, где somefile.js содержит некоторый метод jQuery. Так, например, это содержит эту функцию:
function showWindow(divID)
{
var dialogDiv = $(divID);
dialogDiv.dialog
(
{
bgiframe: true,
modal: true,
autoOpen: false,
show: 'blind'
}
)
dialogDiv.dialog("open");
}
Таким образом на моей .aspx странице (или что бы то ни было, это мог быть .html), у меня есть кнопка:
<input type="button" onclick="showPopUp('testDiv')" value="Click Me!" />
Мой вопрос, мы собираемся использовать showPopUp на всем протяжении в нашем приложении. Если это называют от onClick события, то, куда я помещаю свой $ (документ) .ready (функция (), так как этот код не находится на странице, а на .js файле?
Вы можете поместить это в файл Javascript, если хотите. Если вы подключаете слушателей с помощью атрибута onclick, то вам не нужно использовать $(document).ready().
Однако обычно считается, что лучше не использовать атрибут onclick, а прикрепить слушателя в Javascript, например, так:
$(document).ready(function(){
$("input.showPopup").click(function(){
showWindow($(this).id);
}
function showWindow(id){...}
}
Вы можете поместить этот javascript в голову документа, как сказал ~ricebowl.
Поместите $ (document) .ready (...);
в заголовок
страницы (x) html (или, действительно, .php, .aspx, и т. д.) как обычно, при условии, что вы убедитесь, что он идет после связанного файла скрипта
(для загрузки вашего somefile.js) и, конечно же, ссылки на ваш jQuery:
<head>
...
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="somefile.js"></script>
<script>
$(document).ready(
function() {
$('input[type=button]').click().showPopUp('testDiv');
}
)
</script>
</head>
"Правильный" технический ответ будет зависеть от платформы (PHP, ASP.NET и т. Д.). Если вы хотите использовать эту функцию во всем приложении, вы может использовать тег сценария:
<script type="javascript" src="somefile.js" />
Этот тег может быть включен в «заголовок страницы», реализованный любым способом. Например, в ASP.NET я бы включил этот тег на главную страницу.
Вам нужно сделать следующее: Разделите функцию на две:
MakeDialog (divID) // таким образом вы подготовите div к созданию диалогового окна и ShowDialog (divID) // здесь вы покажете диалоговое окно
//document load
$(document).ready(function(){
MakeDialog(divId);//prepa
});
function makeDialog(divID)
{
var dialogDiv = $(divID);
dialogDiv.dialog
(
{
bgiframe: true,
modal: true,
autoOpen: false,
show: 'blind'
}
)
}
function showWindow(divId)
{
dialogDiv.dialog("open");
}
HTH