Javascript jQuery PJAX插件在HTML网站中不起作用?
我在HTML网站上实现,但它不工作。我注意到容器外的区域正在刷新 我有两页: 1.a、 html 2.b、 html A.html页面代码为:Javascript jQuery PJAX插件在HTML网站中不起作用?,javascript,jquery,html,ajax,pjax,Javascript,Jquery,Html,Ajax,Pjax,我在HTML网站上实现,但它不工作。我注意到容器外的区域正在刷新 我有两页: 1.a、 html 2.b、 html A.html页面代码为: $(函数(){ //pjax $(document.pjax('ula','#main')) }) A页 请注意,容器外的文本是“Page A” B.html页面代码为: $(函数(){ //pjax $(document.pjax('ula','#main')) }) B页 请注意,容器外的文本是“第B页” 现在,我在浏览器中打
$(函数(){
//pjax
$(document.pjax('ula','#main'))
})
A页
请注意,容器外的文本是“Page A”
B.html页面代码为:
$(函数(){
//pjax
$(document.pjax('ula','#main'))
})
B页
请注意,容器外的文本是“第B页”
现在,我在浏览器中打开了a.html页面,然后点击b.html链接。我发现文本变成了页面B。这意味着页面被刷新,因此jQueryPJAX无法工作
请参阅下面的视频,该视频演示了此问题:
我做错了什么?我认为pjax可能不起作用,因为您的链接在pjax容器div中 因此,该链接告诉pjax使用ajax将整个
b.html
文件加载到
中
从pjax文档中:
pjax通过ajax从服务器获取HTML并替换
页面上带有加载HTML的容器元素的内容。
然后使用pushState更新浏览器中的当前URL
用b.html
中的html替换#main
中的某些文本
,并将url更改为b.html的示例
文件a.html
<body>
Page A
<div>
<ul>
<li><a href="b.html">b</a></li>
</ul>
</div>
<div id="main">
some text
</div>
</body>
A页
一些文本
文件b.html
// b.html
<p>Replacement text from b.html</p>
//b.html
b.html中的替换文本
U应改为
<script type="text/javascript">
$(document).pjax('a[use-pjax]', '#main');
</script>
$(document.pjax('a[use pjax]','#main');
如果您需要pjax,只需在超链接中添加“使用pjax”:
<div id="main">
<ul>
<li><a use-pjax href="b.html">a</a></li> /* using pjax */
<li><a href="b.html>b</a></li> /* not using pjax */
</ul>
.... /* content u like to open */
</div>
/*使用pjax*/
/*不使用pjax*/
.... /* 你喜欢打开的内容*/
以及“main”中的所有内容。希望这是帮助,这对我有用不,您的解决方案不起作用。我刚才查过了。还有其他一些问题。
<script type="text/javascript">
$(document).pjax('a[use-pjax]', '#main');
</script>
<div id="main">
<ul>
<li><a use-pjax href="b.html">a</a></li> /* using pjax */
<li><a href="b.html>b</a></li> /* not using pjax */
</ul>
.... /* content u like to open */
</div>