我有一个用HTML,CSS和jQuery制作的移动应用程序,它将与phonegap一起使用。
如果我回过头来改变纯JavaScript并摆脱jQuery框架,应用程序是否可能运行得更快?
编辑:
我的代码相当简单,但是(我猜?)很长时间,大约有1500行代码。
大部分内容如下:
function checkPagesChange(desiredPage){
if(desiredPage === 'page-search-results'){
$('#search-results-info').show()
$('.current-job').removeClass('current-job').remove()
$('body,html').animate({scrollTop:scrollPosition},40)
}else{
$('#search-results-info').hide()
$('body,html').animate({scrollTop:'0'},40)
}
if(desiredPage === 'page-search'){
$('#back-nav').hide();
$('#search-icon').hide();
closeAskToSave()
}else{
$('#back-nav').show();
$('#search-icon').show()
}
if(desiredPage === 'page-view-job'){
$('#job-nav').show();
}else{
$('#job-nav').hide();
}
if(desiredPage === 'page-view-saved-job'){
$('#saved-job-nav').show();
}else{
$('#saved-job-nav').hide();
}
}
更改为纯JavaScript非常简单。但是我确实使用了fadeIn()和animate()这些使用jQuery更简单的东西。
也许jQuery和Javascript的混合最好?为某些事情保持jQuery方法(即fadeIn())但在其他地方使用javascript?
或者,jQuery真的不是很慢吗?
答案 0 :(得分:4)
是的,它会更快。但速度不会太快,你会让代码变得更复杂。
如果使用jQuery的页面速度很慢,请不要删除jQuery,通过分析找出它并修复它。
答案 1 :(得分:1)
编写良好的原生JavaScript几乎总是更快。多少取决于你正在做什么以及jQuery为了兼容性而在幕后做什么。然而,问题是,你是否比jQuery人更好地编写vanilla JS(同时还略微膨胀它以回填兼容性)。它并不总是像普通的旧JS一样简单> jQuery的。代码的质量将起到很大的作用。