jquery库不能在外部php文件中工作

时间:2012-04-07 09:18:18

标签: php jquery include load

我有任何页面,并包含jquery库和css(this)。

现在我有twitter代码加载更多。这工作但但是当我需要使用jQuery删除它时它不起作用(我的索引中有另一个代码)。问题这个:jquery库没有附加到外部php文件。

我在colorbox中遇到同样的问题。当我在colorbox中加载iframe时,我的索引jQuery没有附加到外部文件,所以我将手动jquery放到外部文件中!

没有办法只使用jquery原始文件(我的索引)?

E.X js加载更多:

<script type="text/javascript">
$(function() {
//More Button
$('.more').live("click",function() 
{
var ID = $(this).attr("id");
if(ID)
{
$("#more"+ID).html('<img src="moreajax.gif" />');

$.ajax({
type: "POST",
url: "ajax_more.php",
data: "lastmsg="+ ID, 
cache: false,
success: function(html){
$("ol#updates").append(html);
$("#more"+ID).remove();
}
});
}
else
{
$(".morebox").html('The End');

}


return false;


});
});

</script>

PHP:

 <?php
include("config.php");


if(isSet($_POST['lastmsg']))
{
$lastmsg=$_POST['lastmsg'];
$result=mysql_query("select * from messages where msg_id<'$lastmsg' order by msg_id desc limit 9");
$count=mysql_num_rows($result);
while($row=mysql_fetch_array($result))
{
$msg_id=$row['ms_gid'];
$message=$row['message'];
?>


<li>
<?php echo $message; ?>
</li>


<?php
}


?>

<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" id="<?php echo $msg_id; ?>" class="more">more</a>
</div>

<?php
}
?>

HTML:

    <head><script type="text/javascript" src="./jquery.min.js"></script></head>
    <div id='container'>
    <ol class="timeline" id="updates">
    <?php
    $sql=mysql_query("select * from messages ORDER BY msg_id DESC LIMIT 9");
    while($row=mysql_fetch_array($sql))
    {
    $msg_id=$row['msg_id'];
    $message=$row['message'];
    ?>
    <li>
    <?php echo $message; ?>
    </li>
    <?php } ?>
    </ol>
    <div id="more<?php echo $msg_id; ?>" class="morebox">
    <a href="#" class="more" id="<?php echo $msg_id; ?>">more</a>
    </div>
    </div>

1 个答案:

答案 0 :(得分:0)

是因为你的jquery在文件准备好之后被加载然后你调用另一个php文件。你应该使用没有$(document).ready()的jquery函数;所以你可以在任何地方使用jquery函数。另一个重要的是,而不是使用

$(function(){
    $('#selector').click(function(){
       'your other code'  

    });
});

像这样使用

function my_function(){
  your code
}

和html

<input type = "text" onclick = 'my_function();'>

希望这会有所帮助。这样您就可以在任何地方调用这些功能。如果你在第一个php中调用或加载其他php文件,那么确保它被加载到位于第一个php文件中的div中。