我试图说服那些在我当前组织中设定标准的人,我们应该使用jQuery而不是Prototype和/或YUI。我可以用什么令人信服的优势来说服他们?
答案 0 :(得分:24)
jQuery的3个主要优点是:
答案 1 :(得分:14)
我想说我使用JQuery的主要原因是:
答案 2 :(得分:6)
在我看来,曾经简单地尝试了Prototype,然后尝试并喜欢jQuery:jQuery API感觉更清洁,深思熟虑。 jQuery的创建者/架构师John Resig真的很了解他的东西,它在jQuery的设计中展示,以及他参与的其他各种令人印象深刻的JavaScript项目。
查询和可链接性的整个概念非常适合DOM操作,这似乎是人们使用JS库的主要原因。在线文档太棒了。表现似乎也很好。鉴于它的功能,整个库适合相对较小的包。插件架构对于可扩展性也非常好。
老实说我没有试过YUI,所以我不能对此发表评论。我知道它总共是一个相当大的库,但你可以选择只下载/使用它的特定模块。
答案 3 :(得分:6)
这是你会发现的最精心设计的语言 - 它几乎是直观的。
想要元素的宽度吗?
$('#something').width();
想抓住一个元素,隐藏它,改变它的背景颜色并将其淡化回来?
$('#something').hide().css('background', 'red').fadeIn();
IE的表条带化怎么样(假设定义了hover
类)?
$('table tr').hover(function() {
$(this).addClass('hover');
});
这样的快速,无意识的工作真的有助于销售jQuery。
答案 4 :(得分:6)
这是一个比上面提供的更新的速度测试。上次我运行它的时候,最好的是jQuery,Mootools,Prototype,最后是YUI。注意我在Firefox 3中运行它,浏览器的速度也不同,所以请自己测试一下。
答案 5 :(得分:4)
它非常小,特别是在缩小时,并且在核心库中提供了很多。
它也很容易扩展,并且拥有一个活跃的社区。 p>
答案 6 :(得分:4)
赞成的一个论点是:
受欢迎程度+可扩展性
1)如果有人需要用JavaScript做X,那可能是用jQuery做的 2)如果已经做了很多,可能有一个插件,如果不是原生支持
如果非常独特,那么很多人都会在SO或其他地方回答您的问题。
答案 7 :(得分:4)
jQuery的一个优点是大型社区已经开发了大量插件。
答案 8 :(得分:3)
您可以关注this link以了解有关jQuery的更多信息,使用它的原因以及它的优点。
答案 9 :(得分:2)
嗯...
首先,您应该考虑为什么您认为jQuery是好的,但您不知道用什么参数来说服另一个人。也许你应该首先说服自己。 ;)
无论如何,jQuery只是另一个框架。你应该用它最擅长的。如果你只是为了基本的DOM处理而使用它,那就算了吧!学习如何正确使用js,你会没事的!
考虑这个HTML:
<body>
<div style="width: 400px; height: 400px; background-color: red">
<div style="width: 400px; height: 400px; background-color: red">
</div>
<script type="text/javascript">
function test1 (){
document.body.innerHTML = ""
var div = document.createElement("div");
document.body.appendChild(div);
$(div).width("400px").height("400px").css("background-color", "red");
}
function test2 (){
document.body.innerHTML = ""
var div = document.createElement("div");
document.body.appendChild(div);
$(div).width("400px");
$(div).height("400px");
$(div).css("background-color", "red");
}
function test3 (){
document.body.innerHTML = ""
var div = document.createElement("div");
document.body.appendChild(div);
div.style.width = "400px";
div.style.height= "400px";
div.style.backgroundColor = "red";
}
function test4 (){
document.body.innerHTML = ""
var div = document.createElement("div");
document.body.appendChild(div);
div.setAttribute("style", "width: 400px; height: 400px; background-color: red");
}
</script>
</body>
将其放在hml文件中,<head>
然后,打开firebug并运行以下代码: console.profile(); TEST1(); console.profileEnd();
console.profile();
test2();
console.profileEnd();
console.profile();
test3();
console.profileEnd();
console.profile();
test4();
console.profileEnd();
为自己查看结果!
但是如果你想在DOM上做一些复杂的操作,需要你做几个循环或者找出DOM上的元素符合某些标准,你可以考虑使用jQuery,因为它会为你实现这个过程。 / p>
无论如何,请记住,没有什么比使用您保存在代码中的引用控制DOM更好的了。它更快,更易读。 Google“js最佳做法”。
我将jQuery用于复杂的事情,它需要花费很长时间才能实现,最终会得到类似jQuery的代码。在这种情况下,使用它是有道理的!
玩得开心!
答案 10 :(得分:2)
根据经验,每个人都有自己的优点和缺点,因为在你的应用程序中有一个非常具体的角色。做出全球决定可能不是最合适的方法。开展手头的具体任务,分析绩效,膨胀,经验等,然后做出具体的决定/建议。
答案 11 :(得分:1)
它有一套很好的插件,编码风格不引人注目,这意味着它不会太难替换。还有一个很好的替代Ruby on Rails助手,称为jRails。
性能方面他们都非常接近:http://www.kenzomedia.com/speedtest/但是,MooTools,dojo,ext和Prototype在我的环境中都运行得更快。
我的问题是 - 您为什么要使用它?是因为你更了解它吗?
答案 12 :(得分:1)
我已经使用jQuery几个月了,并且发现它是一种愉快的体验。框架清晰简洁,它有一个很棒的插件架构并得到很好的支持,但框架是一个非常私人的东西,你应该尝试一些通常不需要很长时间才能找到最适合你的那个。< / p>
不确定这对您是否重要,但微软最近在VS 2008 Here is the blog post的下一次更新中宣布支持jQuery。
你可以听到jQuery背后的人John Resig,在最近Boagworld podcast上讨论了其他各种框架。它可能会帮助你下定决心。
答案 13 :(得分:1)
Jquery已经存在了几年,所以像其他人一样,它有一个很深的社区,很多插件和不错的支持。暂且不谈的是它很容易学习。
答案 14 :(得分:1)
也许你不应该?这完全取决于您正在构建的应用程序类型。如果您正在构建GUI密集型应用程序,比如Yahoo!邮件,那么也许你应该考虑使用YUI或Mootools而不是jquery。就个人而言,我是一个巨大的jQuery粉丝,但它绝对是最好的添加一个交互的大多数静态UI。另一方面,如果你正在使用它,那么jquery更简单,语法更好,并且它有很多动力。
答案 15 :(得分:1)
我是Prototype的人,但我使用了jQuery。老实说,我不认为两者之间可以作为“卖点”使用。另一方面,YUI非常臃肿。我永远不会在任何商业级应用程序中使用它。
我发现this page谈论了这个确切的主题。
答案 16 :(得分:0)
如果您试图从业务角度说服人们,微软最近决定使用Visual Studio发布jQuery可能有助于建立一些额外的可信度。然后,这可能会伤害你的事业,这取决于他们对微软的看法。
答案 17 :(得分:0)
为什么不创建快速比较?
执行一项任务,例如“查找包含类foo图像的所有div或表,并将click事件附加到每个div,这使得它们扩展50%。”或者与您正在做的事情更相关的事情。
然后使用jQuery,Prototype等进行编码,并进行比较。哪个更短?更容易阅读?跑得快? (您可以找到速度比较here。)
答案 18 :(得分:0)
与使用原始javascript相比,使用JQuery具有多个好处。