我目前有一个画廊,当您单击缩略图时会打开一个模式弹出窗口。我想要做的是能够为模态生成一个独特的链接(即www.mywebite.com/#link1),它通过ajax加载它的内容。如果有人要发送这个独特的模态链接并将其发送给某人并将其粘贴到他们的浏览器中,理想情况下,我希望模态窗口自动加载和显示其内容,而无需用户单击相应的缩略图。
这甚至可能吗?我知道这不是最简单的任务,对此的任何帮助将不胜感激。
要了解我正在做什么,请访问: http ://www.ddbremedy.co.uk/siteupdate/work
您将看到一个带有缩略图的 iMac 屏幕。
提前谢谢了。
更新!!!!!
好的,这就是我目前所在的位置。我决定使用 jquery 地址报废,改为使用“window.location.hash”进行深度链接。
代码是这样的:
var base_url = "http://www.ddbremedy.co.uk/siteupdate/";
$('#work_gallery li a').on('click', function(event) {
event.preventDefault();
postLink = $(this).attr('href');
window.location.hash = postLink.replace(base_url, "");
/* I have a bunch of code that animates the modal window
in which I don't need to include as there is quite alot of it.
Content loads via ajax. Then when I close the modal I add this
code to remove the hash and revert the link back to its original state. */
if ("pushState" in history) {
history.pushState("", document.title, window.location.pathname);
} else {
window.location.hash = "";
}
});
上面的代码工作正常,并在我使用 ajax 加载和关闭外部内容时完全按照我想要的方式显示链接。现在我需要弄清楚的是,如果有人获取该链接并将其粘贴到地址栏中,我如何自动加载 ajax 内容。内容是基于链接 href 和 click 事件加载的,那么我如何诱使浏览器认为点击了正确的链接并加载正确的内容,纯粹基于它的链接?