jQuery+ajax实现动态执行脚本的方法
本文实例讲述了jQuery+ajax实现动态执行脚本的方法。分享给大家供大家参考。具体分析如下:
有时候,在页面初次加载时就取得所需的全部JavaScript也是没有必要的。具体需要取得哪个脚本,要视用户的操作而定。虽然可以在需要时动态地引人<script>标签,但注人所需代码的更优雅的方式则是通过jQueiy直接加载.js文件。
向页面中注人脚本与加载HTML片段一样简单。但在这种情况下,需要使用全局函数$.getScript(),这个全局函数与它的同辈函数类似,接受一个URL参数以查找脚本文件,参见如下代码:
$(document).ready(function(){ $('#letter-ca').click(function(event){event.preventDefault(); $.getScript('c.js'); }); });
在前一个例子中,接下来要做的应该是处理结果数据,以便有效地利用加载的文件。然而,对于一个脚本文件来说,这个过程是自动化;换句话说,脚本会自动执行。
以这种方式取得的脚本会在当前页面的全局环境下执行。这意味着脚本有权访问在全局环境中定义的函数和变量,当然也包括jQuery自身。因而,我们可以模仿JSON的例子来准备脚本代码,以便在脚本执行时将HTML插人到页面中。现在,将以下脚本代码保存到c.js中:
varentries=[ { "term":"CALAMITY", "part":"n.", "definition":"Amorethancommonlyplainand... }, { "term":"CANNIBAL", "part":"n.", "definition":"Agastronomeoftheoldschoolwho..." }, { "term":"CHILDHOOD", "part":"n.", "definition":"Theperiodofhumanlifeintermediate..." } //省略的内容 ]; varhtml=''; $.each(entries,function(){ html+='<divclass="entry">'; html+='<h3class="term">'+this.term+'</h3>'; html+='<divclass="part">'+this.part+'</div>'; html+='<divclass="definition">'+this.definition+'</div>'; html+='</div>'; }); $('#dictionary').html(html);
最后,单击c链接,应该会看到我们预期的结果。
希望本文所述对大家的jQuery程序设计有所帮助。