Содержимое Ajax невидимо в баг-багах и не может использовать функцию наведения - PullRequest
2 голосов
/ 30 января 2011

Я использовал вызов ajax для генерации контента при запросе пользовательского ввода, он работает хорошо, пока я не попытаюсь использовать функцию наведения jquery.

$(document).ready(function() {
  $(".numbers").hover(function(){
    $(".fullUnits").fadeIn(80);
    $(".units").fadeOut(0);    
  }, function(){
    $(".fullUnits").fadeOut(0);
    $(".units").fadeIn(80);
  });
});

приведенный выше код на самом деле правильный, он не работает, потому что .number невидим для браузера. Вот как это выглядит в Firebugs.Grayed, что означает не видимым. поэтому вы не можете навести на него курсор (извините, я не могу опубликовать изображение сейчас)

Снимок экрана http://converteveryunit.com/firebug.png

следующий код является кодом ajax, который используется для генерации контента

function showHint()
{
  var str = document.getElementById("inputText").value;
  if (str.length==0)
  { 
    document.getElementById("txtHint").innerHTML="";
    return;
  }
  if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
  }
  else
  { // code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  xmlhttp.onreadystatechange=function()
  {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
      document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
  var query = "gethint.php?q="+str;
  if (document.getElementById("m2u").checked) 
  {
    query = query + "&mode=m2u";
  }
  else if (document.getElementById("u2m").checked) 
  {
    query = query + "&mode=u2m";
  }

  xmlhttp.open("GET",query,true);
  xmlhttp.send();

}

в случае, если вам нужен другой код, демо-версия находится на converteveryunit.com

1 Ответ

0 голосов
/ 30 января 2011

Вы должны связать событие hover после загрузки контента

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...