是否可以在每次刷新页面时仅刷新#content div?

时间:2019-04-08 14:53:39

标签: jquery html refresh

我想问问是否有可能“防止”刷新页面并仅刷新内容div,而无需重新加载侧栏和标题(这样就不会出现烦人的眨眼,页面看起来更流畅)。

我已经尝试过了,但这仅适用于特定的div和特定的情况。我想在整个网站上都这样做。

$('#thisdiv').load(document.URL +  ' #thisdiv');

2 个答案:

答案 0 :(得分:0)

那实际上不是你能做的。您无法重新加载文档的某些特定部分,并要求浏览器重新呈现它。

您可以做的是使用Javascript中的XHR请求将异步数据加载到网页中。但这是概念的另一章。

答案 1 :(得分:0)

根据docs,您只能使用load()方法更新一个div。

  

.load()方法与$ .get()不同,它允许我们指定要插入的远程文档的一部分。这可以通过使用url参数的特殊语法来实现。如果字符串中包含一个或多个空格字符,则假定字符串中第一个空格之后的部分是确定要加载内容的jQuery选择器。


或者使用jQuery.get()方法并更新需要动态更新的任何部分。

例如:

// selectors which is need to  update
let selectors = ['#con', '#con1'];

$.get(document.URL , (res) => {

   // create jQuery element reference with  html response
   $htm = $(htm);

   // iterate over seelctors, get element and update with content 
   // of element in response html
   selectors.forEach(sel => $(sel).html($(sel, $htm)));

})