jQuery:用.load加载php文件

时间:2010-03-16 02:33:05

标签: jquery

嘿所有,这更像是一个标准和结构问题。

考虑这个.load()场景。我有一个页面,使用.load()函数将第二页加载到div中。

<html><head><title>My Page</title>

<script type='text/javascript' src='myfunctions.js'></script>

<head>

<body>
     <a href='#' id='click_link'>Click Me</a><br>
     <div id='target_container>
     </div>
</body>
</html>

myfunction.js持有点击例程,当点击#click_link时,它会将页面加载到#target_container中。现在正在加载的页面也需要访问myfunction.js。我可以再次加载它,这实际上似乎工作,或者我可以将我需要的javascript代码放入加载的页面。这似乎也有效。

我的抱怨是,必须有更好,更干净的方法来做到这一点。我错了吗?或者这是实现这一目标的唯一方法。我一直以为javascript代码应该在<head></head>内被监禁,并且如果它试图活在它之外就会遭到恶意殴打。

我看到了几个帖子,但没有一个明确解释这是否是解决此问题的最佳方法。

请告诉我。 〜谢谢

1 个答案:

答案 0 :(得分:1)

我认为你要找的是jQuery的live()方法。有了它,您可以使用特定选择器将事件绑定到所有当前和未来元素。这意味着您可以将所有javascript保留在头部,而不必担心每次向DOM添加新元素时绑定和重新绑定。

你可以在myfunctions.js

中写下这样的内容
$('.new_or_old').live('mouseover', function(){
   myFunction();
});

并且每个具有“new_or_old”类的元素都会在鼠标悬停时调用myFunction(),即使它是在原始页面加载后插入的。