На странице есть меню с кнопками, при нажатии на которые должен подгружаться контент из php-файлов и вставляться в соответствующие дивы. Страница статичная, без CMS. Подскажите какой из 2х описаных в заголовке вариантов подойдет для этого лучше всего? Какая между ними разница?
Если не углубляться в подробности, то разница только в том, что $(selector).load(url)
загружает данные по url прямо в $(selector)
, а для $.get({...})
надо писать обработчик.
Используйте первый вариант, если он вас удовлетворяет, но если же вам надо отловить событие загрузки - используйте $.get()
UPDATE: В .load()
также есть возможность подключить callback функцию при успешном завершении загрузки: .load( url [, data ] [, complete ] )
Пример:
$( "#result" ).load( "ajax/test.html", function() {
alert( "Load was performed." );
});
должен подгружаться контент из php-файлов и вставляться в соответствующие дивы
Это практически описание работы функции .load
Поэтому в данном случае стоит использовать ее.
$.get делает только GET запрос. В то же время, .load
в зависимости от параметров может делать запрос любого типа и даже выбирать конкретный элемент из результата, который надо вставить на страницу.
Для это нужно указать в параметре url
нужный селектор через пробел.
elements.load('site/url/ #element')
Приведенный код вставит только содержимое элемента с id=element а не всю загруженную разметку.
Разница так же заключается в возвращаемом значении: $.get возвращает Deferred (реализация Promise), в то время как .load
возвращает текущую коллекцию, что позволяет продолжить с ней работать.
Виртуальный выделенный сервер (VDS) становится отличным выбором
В моем графическом приложение есть текстовое поле(txtField) и кнопка "Search"При запуске приложения, открывается приложение и пользователь может...