jquery和prototype比较,以及冲突解决

  一直以来在学习jquery 但是在项目当中都是使用的prototype.js 自然而然就会有冲突的地方, 因为在jquery中$(”#id”) 这样虽然也可以获得某id的对象,但是不能对此id进行常规的js操作。因为返回的并不是这个id的对象而是一个JQuery对象,所以冲突是难免的,解决办法到是有的原文,不过最后我还是抛弃prototype,开始使用jquery了。
同时存在这两个js库的时候要这样

<script src="prototype.js" mce_src="prototype.js"></script>
<script src="jquery.js" mce_src="jquery.js"></script>
<script type="text/javascript">
      jQuery.noConflict();
</script>

注意:一定要先引入prototype.js 再引入jquery.js,先后顺序不可错。

如果先包含jQuery,将引起代码终止,作为提醒,jQuery将抛出一个异常:
“You are overwriting jQuery, please include jQuery  last.”

prototype中最方便的函数就是$(”id”) ===>对应于document.getElementById(”id”);//获得对象
如今使用jquery,这些都没有了。在jquery中应该是:$(”#id”).val
如果你把prototype换成jquery了,但是还想使用prototype中的方便函数
建议自己定义两个函数

function $G(id){
 return document.getElementById(id);
}
function $F(id){
 return $G(id).value;
}

以前的javascript思想要改变了,用了jquery一切就要jquery的规范来,好处就是不用担心浏览器兼容性了,反正用的是jquery的函数,不兼容就是他的问题了,如果是自己随意写,就有浏览器的兼容性问题。
 

欢迎光临本站!请 订阅本站Feed 获得最新信息
转载请注明文章转载自:钱本草 [http://www.qbencao.com]
本文链接地址:jquery和prototype比较,以及冲突解决

Tags: , , ,  | 日期:  2008-04-19|  分类:  JavaScript, 编程开发| 阅读次数: 56 
上一篇文章:   JQuery总结(二)
下一篇文章:  JQuery相关资料大收集

“jquery和prototype比较,以及冲突解决”有1个评论

  1.  

    只要加入一行:jQuery.noConflict();
    就能解决冲突的问题,看来jquery早就对这个情况有应对.

我来说两句

Powered by WordPress | Blue Weed by Blog Oh! Blog | Entries (RSS) and Comments (RSS)