我想知道性能是否有任何差异(或根本不同)
这之间:
$(selector).load('page #myid');
和
$.get('page',function(data){
$(selector).html( $(data).find('#myid') );
/* depending the dom tree it should be .filter() */
})
我想知道性能是否有任何差异(或根本不同)
这之间:
$(selector).load('page #myid');
和
$.get('page',function(data){
$(selector).html( $(data).find('#myid') );
/* depending the dom tree it should be .filter() */
})
我想说使用load()或.get()更多地与您的意图和要求有关,而不是性能。
加载()
.load()
用于轻松/简单地加载文档或其中的一部分。
它将加载完整的文档,然后使用innerHTML
解析 HTML 以仅返回您感兴趣的部分。
如果您只需要一种将某些内容加载到 div 中的快速方法,那么$(element).load(url, selector)
就是要走的路。我会假设load()
为此进行了优化。
得到()
与 不同load()
,.get()
允许设置dataType
更大的灵活性,例如跨域请求的 JSONP。
它还实现了promise
接口,赋予它 a 的所有特性Deferred Object
。
从文档:
Promise 接口还允许 jQuery 的 Ajax 方法,包括 $.get(),在单个请求上链接多个 .done()、.fail() 和 .always() 回调,甚至可以在请求之后分配这些回调已经完成。如果请求已经完成,则立即触发回调。
概括
在非常基本的层面上,简单的.load(url, selector)
和.get(url, callback)
. 使用任何一个都应该没问题。
我想,这里没有对错之分。使用任何适合您的需求。
问自己类似的问题:
你需要跨域(JSONP)吗?
你需要链.fail()
,.done()
等吗?
您需要任何没有的功能get()
吗load()
?
...
如果您使用load()
或get()
取决于您的要求。在这种情况下,性能是次要的。