如果输入一次,我需要找到在导航时将参数保留在网址中的方法,即:impressions
例如,用户来?aff=john
并导航到website.com/?aff=john
我需要保留url参数,因此完整的网站名称为:about-us
这是我到目前为止所尝试的,但它无法正常工作..它不断添加url参数(website.com/about-us/?aff=john
)
window.location.search
感谢。
编辑:已经尝试过提议..不工作。答案 0 :(得分:0)
您可以使用window.location.search保存查询字符串,然后您可以使用jQuery添加链接处理程序,如下所示:
var glString = window.location.search;
$('a').on('click', function(evt) {
evt.preventDefault();
window.location = $(this).attr('href') + glString;
});
或者如果您更喜欢javascript
var glString = window.location.search;
var links = document.getElementByTagName('a');
links.addEventListener('click', function(evt) {
evt.preventDefault();
window.location = $(this).attr('href') + glString;
});
答案 1 :(得分:0)
您可以使用sessionStorage将导航数据保存到密钥中。在需要时随身携带。现在,all browsers support it except Opera mini。
希望您的软件没有浏览器限制,并且您的应用程序不必使用过时的浏览器。
从mozilla网站复制后,使用sessionstorage的代码如下:
// Save data to sessionStorage
sessionStorage.setItem('key', 'value');
// Get saved data from sessionStorage
var data = sessionStorage.getItem('key');
// Remove a key from sessionStorage
sessionStorage.removeItem('key');
// Remove all data from sessionStorage
sessionStorage.clear();
这样,您就不需要在每个页面上附加它。对于域URL和当前浏览器会话,您可以从sessionStorage获取它。
答案 2 :(得分:0)
您可以使用 sessionStorage 暂时保存以前的网址。
sessionStorage.setItem('parameter', 'dataString');
sessionStorage.getItem("parameter");