使用 jQuery .load() 时启用书签;

发布于 2024-11-27 15:25:26 字数 485 浏览 0 评论 0原文

我有一个文件名“project_profiles.html”,如下所示:

<div id="project1">
    <p>Project 1</p>
</div>

<div id="project2">
    <p>Project 2</p>
</div>

<div id="project3">
    <p>Project 3</p>
</div>

在我的索引页面上,我使用: $('#content').load(project_profiles.html #project1');

然后,索引页面加载,仅显示 id 为项目 1 的 div。不过,这很好,如果用户尝试为该页面添加书签,则该页面将无法工作。有没有一种方法可以使书签工作,同时将所有项目 div 放在一个文件中?

提前致谢....

I have a file name "project_profiles.html" which looks like this:

<div id="project1">
    <p>Project 1</p>
</div>

<div id="project2">
    <p>Project 2</p>
</div>

<div id="project3">
    <p>Project 3</p>
</div>

On my index page, I use this: $('#content').load(project_profiles.html #project1');

Then, the index page loads showing only the div with the id project 1. That's fine however, if the user tries to bookmark the page it won't work. Is there a way to make the bookmarking work while having all of the project div's in one file??

Thanks in advance....

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

戒ㄋ 2024-12-04 15:25:26
$('#content').load(project_profiles.html #project1');
location.hash = "#project1";

然后他们应该能够将其添加为书签。下一步是根据页面加载时存在的 location.hash 自动加载正确的内容。

在你的js中编辑

(最好在 $(document).ready 函数中)放置以下代码

if(location.hash)
$('#content').load('/_catalogs/html/project_details.htm ' + location.hash);

,如果可以的话,可以在不破坏任何内容的情况下更改

<a href="#p1" onclick="$('#content').load('/_catalogs/html/project_details.htm #project1');">Read More</a>

<a href="#project1" onclick="$('#content').load('/_catalogs/html/project_details.htm #project1');">Read More</a>
$('#content').load(project_profiles.html #project1');
location.hash = "#project1";

Then they should be able to bookmark it. The next step is auto loading the correct content based on the location.hash if present on page load.

Edit

in your js (preferable in the $(document).ready function) place the following code

if(location.hash)
$('#content').load('/_catalogs/html/project_details.htm ' + location.hash);

and if you can without breaking anything change

<a href="#p1" onclick="$('#content').load('/_catalogs/html/project_details.htm #project1');">Read More</a>

to

<a href="#project1" onclick="$('#content').load('/_catalogs/html/project_details.htm #project1');">Read More</a>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文