首先,我是Javascript和任何语言的完全初学者。我在我的网站上使用wordpress。
我有一个网站,根据查询字符串加载图片。
实施例
www.mysite.com/page1 no image
www.mysite.com/page1?sponsor=calbest logo of calbest
www.mysite.com/page1?sponsor=pfcu logo of pfcu
我的问题是:即使访问其他页面,如何保留当前查询字符串?
例如,我从www.mysite.com/page1?sponsor=calbest
开始,想要点击指向其他页面的链接。如何确保我到达www.mysite.com/page2?sponsor=calbest
而无需直接在HTML中编写?
我需要这样做的原因是我可以更新page1或其他内容并在页面中添加各种赞助商,以便他们拥有“个性化”网页。
是否有一个Javascript函数可以将我正在使用的查询字符串添加到我点击的任何链接?
答案 0 :(得分:0)
这是一种“Jquery”方式:
<html>
<head>
<script type='text/javascript' src='http://code.jquery.com/jquery-1.8.3.js'></script>
<script type='text/javascript'>
$(function(){
getParameterByName = function(name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
var sponsor = getParameterByName('sponsor') || 'calbest';
$('a.sponsor').each(function( index ) {
$(this).attr("href", $(this).attr("href")+ "?sponsor="+ sponsor);
});
});
</script>
</head>
<body>
<a class="sponsor" href="http://www.google.com">Google</a>
<a class="sponsor" href="http://www.yahoo.com">Yahoo</a>
<a class="sponsor" href="http://stackoverflow.com">Stackoverflow</a>
<a href="http://www.microsoft.com">MS Not Sponsored</a>
</body>
</html>
不要忘记我获得getParameterByName
的位置