我目前有一个网页,我使用.load()从另一个页面加载div。在我加载之后,我运行一些jquery代码,将特定的URL附加到所有现有的href。问题是我第一次点击超链接/ href我被重定向到旧的href。但是在我点击"然后返回"我的浏览器上的按钮,我尝试相同的超链接/ href,href工作,并带我到新的附加href。
我想知道在我第一次加载页面时是否有更改我的所有hrefs。
这是我的代码:
第一次我初始化容器,我将从第二页加载容器。
<pre>
<code id="iframe-fragment"></code>
</pre>
第二次我将第二页的容器加载到我当前的网页中。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<link href="https://roboticsys.com/support/plugins/servlet/docs/c1001-d1003/RapidCode/rsi_stylesheet.css" rel="stylesheet" type="text/css">
<script>
$('#iframe-fragment').load('https://roboticsys.com/support/plugins/servlet/docs/c1001-d1003/RapidCode/_absolute_motion_8cs-example.html div.fragment');
</script>
3rd 我在导入的容器中为所有href添加了一个url。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("a").each(function() {
var $this = $(this);
var _href = $this.attr("href");
$this.attr("href", 'https://appended-url.com/' + _href);
});
});
</script>
提前谢谢。
答案 0 :(得分:0)
似乎您的load()
内容正在被浏览器缓存,并且只要您点击后退按钮就会显示为页面上的内容。
然而,在此之前,在初始页面加载时,您的文档已完成,并运行您的每个文档,但加载不完整。在这种情况下,您的内容不会更新。
我宁愿通过加载完成回调来更新URL:
$('#div').load('http://myurl', function(res, status, xhr){
//You can use the parameters for any sort of conditionals
$('a').each(function(){
//your code to edit the URLs
});
});