[英]How to change a link's HREF using JavaScript?
我正在制作游戲,我想讓玩家單擊以切換頁面顏色。 具體來說,我希望玩家能夠將Bootstrap主題(遵循從Bootswatch提取的主題)從Cerulean更改為Darkly,以使頁面樣式看起來有所不同。
為此,我需要能夠使用JavaScript更改鏈接的HREF。 我該怎么做呢?
由於您使用的是twitter-bootstrap
,因此我假設您使用的是jQuery
。 您可以通過簡單的調用來更改<link>
的href
屬性:
$("link[href=OLDHREFYOUWANTTOCHANGE]").attr("href", newURL.com)
但是,恐怕這不一定會為頁面重新加載CSS。 也許您可以為網站設置window.location.hash
(或其他一些參數),並根據其加載特定的樣式表集。
例如,在頁面頂部:
<script>
var hash = window.location.hash;
if (hash === "#blue")
//add blue stylesheet
else
//add red stylesheet
</script>
使其正常工作的最簡單方法是簡單地重新加載頁面,並僅根據需要加載特定的CSS文件。
但是您可以像這樣添加一個新的CSS文件,不確定它是否在所有情況下都能正常工作,因為它不會重置您的舊CSS:
var link = $('<link>');
link.attr({
type: 'text/css',
rel: 'stylesheet',
href: <your CSS file url>
});
$('head').append(link);
如果您使用的是jQuery,請使用以下代碼:
$(location).attr('href','http://www.newurlorwhatever.com');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.