簡體   English   中英

如何使用JavaScript或jQuery更改另一頁面上元素的樣式?

[英]How to change style of an element on another page using JavaScript or jQuery?

好的,這是我的問題......我有兩頁。 在第一頁上,我有一個標題( h2 )元素,我想在其上應用邊框樣式。 在第二頁上,只有一個鏈接。 當點擊第二頁的鏈接時,要導航到第一頁,它應該在h2標簽周圍的第一頁上創建一個邊框。

有關如何做到這一點的任何想法? 是否可以使用常規JavaScript或jQuery來實現?

謝謝!

,JavaScript是客戶端的,為此您需要服務器記住鏈接是否被單擊,可能是通過將其記錄在數據庫或會話變量中。

當然,如果你使用網站的傳統模型,而不是加載已經使用純JS的頁面。

這將是這樣做的一個非常愚蠢的辦法,但它可能這樣做客戶端。 我會認真地建議在服務器端做它。

在第2頁上,使用哈希鏈接返回第1頁:

<a href="/page1#border">Go back to page one and add a border</a>

在第1頁,檢查是否有哈希:

if (window.location.hash === '#border') {
    $('h2').addClass('withBorder');
}

我想如果你正在尋找這種情況,你可以通過將一些哈希傳遞給url來實現它:

我在second page url passed a hash named 'second' ,並將此腳本放在第二頁上

$(function(){
    var url=window.location;
    var hash = url.hash.substr(1);
    if(hash == "second"){
       $('h2').css('border','solid 1px red');
    }
});

如果有幫助,請查看此項。

那么有一種方法可以用JavaScript做到這一點,雖然它很棘手,服務器端也很容易。 您需要使用一些JavaScript來加載不同的頁面而不刷新整個DOM。 我用一種叫做pjax的東西來做這件事。 它的工作方式是讓每個頁面充當一個容器,通過ajax加載所有后續頁面。 通過不執行完整頁面重新加載,您在一個頁面上進行的任何樣式更改都會轉移到其他頁面(這種情況不會在實際的瀏覽器刷新后繼續存在)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM