2012-04-07 2 views
0

에 이미 jQuery로 작동하지 않는 것은 내 JQuery와 있습니다 :동적으로로드 된 PHP, .load()가 페이지 여기

$id2 = mysql_real_escape_string($id2); 
       $getdata8 = mysql_query("SELECT * FROM musicbook WHERE identify='$identify' ORDER BY id DESC LIMIT 20"); 
       $numrowsgetdata = mysql_num_rows($getdata8); 
       if ((mysql_num_rows($getdata8))<1) 
       { 
       echo "<i>Be the first to say something?</i><p/>"; 
       } 
       while ($row8 = mysql_fetch_assoc($getdata8)) 
       { 
       $id8 = $row8['id']; 
       $name8 = $row8['name']; 
       $message8 = $row8['message']; 
       $message10 = nl2br($message8); 
       $date8 = $row8['date']; 
       if ($name8==$username) 
       { 
       echo " 
       <section class='hover'> 
       <div class='messagediv' style='background:#1A1A1A;'><div style='padding:5px;'>$message10<br/> 
       <div style='margin-top:4px; font-size:.8em; float:left;'><div class='hidefordeletelistenchat' style='float:left;'><a href='http://www.pearlsquirrel.com/$name8' style='color:white;'>$name8</a><font style='color:#D6D6D6'> on $date8</font></div> 
       <div class='deletelistenchatcontainer' style='float:left;color:#FFF;display:none;z-index:10;background:#1a1a1a'><input type='hidden' id='wpm2' value='$id8'><img src='cross.png' style='float:left;' alt='PearlSquirrel'/><span class='hoverdeletetext' onclick='LinkOnClick4($id8);'>Delete</span></div></div></div></div> 
       </section> 
       "; 
       } 
       else 
       { 
       echo " 
       <div class='messagediv'><div style='padding:5px;'>$message10<br/> 
       <div style='margin-top:4px; font-size:.8em; float:left;'><div style='float:left;'><a href='http://www.pearlsquirrel.com/$name8' style='color:white;'>$name8</a><font style='color:#D6D6D6'> on $date8</font></div> 
       </div></div></div>"; 
       } 
       } 
       if($numrowsgetdata >= 20) 
       { 
       echo "<div id='loadingcomments'><img src='loading.gif' style='height:30px; width:30px;'></div>"; 
       } 

위의 코드가 제대로 작동 : 여기

$(function(){ 
    $('.messagediv').on('mouseover', function() { 
    $(this).find('.deletelistenchatcontainer').css({'display':'block'}); 
    $(this).find('.hidefordeletelistenchat').css({'display':'none'}); 
    }).on('mouseout', function(){ 
    $(this).find('.deletelistenchatcontainer').css('display', 'none'); 
    $(this).find('.hidefordeletelistenchat').css({'display':'block'}); 
    }); 
    }); 

내 PHP입니다 . 그러나 이것은 사용자 주석 시스템입니다. 사용자가 주석을 삭제 한 후에도 위의 PHP 함수와 동일한 div를 다시로드하지만, 이렇게하면 jquery는 동적으로 생성 된 내용과 더 이상 작동하지 않습니다. 내가 사용하고있는 .load() 속성으로로드 된 내용에 문제가 있다는 것을 알고 있지만,이 작업을 올바르게 수행하는 방법을 아는 사람은 누구입니까? .live() 특성 또는 다른 것을 사용해야합니까? 감사!

답변

0

대신 .get()을 사용하십시오. 효과가있을 것입니다.

+0

그래서 $ (this) .get ('. deletelistenchatcontainer')이됩니다 .css ({ 'display': 'block'})); – Eggo

+0

그것이 작동하지 않는 것 같습니다. – Eggo

0

해결했습니다. .live()가 필요한 것입니다.

+0

1.7 현재 .live()는 대신 http://api.jquery.com/live/ 대신에 .on() 사용이 금지되어 있습니다. – VDP

관련 문제