Получение php-файла и отображение содержимого при наведении

#jquery

#jquery

Вопрос:

Когда кто-то наводит курсор на div.lol, я хочу показать содержимое внутри profile.php на div.sdf

     $(document).ready(function(){
    $('.lol').hover(function(){
        $(this).parent().next().find('.sdf').get('profile.php');
    },function(){
        $(this).parent().next().find('.sdf').get();
    })
});
 

Я пробовал это, но ничего не загружается.

вот мой jfiddle http://jsfiddle.net/csbVW/93 /

Комментарии:

1. Почему бы не загрузить его один раз, а не при каждом наведении? Это похоже на плохой дизайн.

2. Я предлагаю вам предварительно загрузить содержимое и показать его при наведении. При медленном соединении может потребоваться 2 секунды до загрузки содержимого, чего вы на самом деле не хотите при наведении

3. согласен с @Martijn. Если вам действительно нужно это сделать, загрузите содержимое в <div> элемент, добавьте a display:none в css (иначе вы сможете увидеть его до загрузки DOM, и это ужасно на мой вкус), затем $('.lol').hover(function(){ $('.sdf').show(); }); или что-то подобное.

Ответ №1:

Вы get неправильно используете метод. Вот документация get . Способ, который вы использовали get , заставляет вас вызывать эту функцию. Используйте AJAX get метод для извлечения данных с сервера, а затем введите результат в DOM элемент, в котором вы хотите его отобразить.

Ответ №2:

Линек прав в том, что вы неправильно используете метод get. Вы передаете функцию в качестве второго параметра и используете ее для выполнения того, что вы хотите сделать с данными, возвращенными из вызова GET .

Должно сработать что-то вроде следующего…

 $(document).ready(function(){
  $('.lol').hover(function(){
  loldiv = $(this).parent().next().find('.sdf');
  $.get('profile.php', function(data) {
    loldiv.html(data);
  });    
});