2014-11-21 22 views
0

請幫幫我! 我有兩個html頁面。第一頁有button,第二頁有div。所以,當我點擊button時,我想讓它在同一窗口中打開第二頁,並更改div的背景。如何使用jquery從另一個頁面更改元素的css?

這裏是我的代碼:

$(".button").on("click",function(){ 

    window.location.href="secondPage.html"; 
    $("div").css({background: "red"}) 

}); 

有什麼建議?

+2

我看不出有做反正不是追加的東西URL和第二頁上有這個代碼等反應,因此。或在cookie或會話中的東西。第二頁不知道你如何到達那裏。 – im1dermike 2014-11-21 14:22:09

+0

加載第二頁時,第一頁上的JavaScript將不再能夠執行。要做到這一點,您需要一種方法,使您的意圖從一頁到下一頁像URL或cookie中的參數一樣持久。 – 2014-11-21 14:24:52

回答

1

你可以這樣做:

第一頁

$(".button").on("click",function(){ 

    localStorage.setItem('button', 'clicked'); 
    window.location.href = "secondPage.html"; 

}); 

第二頁

if(localStorage.getItem('button') === 'clicked'){ 
    $("div").css({backgroundColor: "red"}); 
} 

要卸下的localStorage-對象的項目(如背景應不得有條件地改變)使用:

localStorage.removeItem('button'); 

Demo

Reference

注:的localStorage的,對象是隻能在IE版本> 7.可用的其他主要瀏覽器正常工作。

+0

AFAIK使用本地存儲,Web應用程序可以在用戶的​​瀏覽器中本地存儲數據。所以,如果用戶直接訪問secandpage.html,點擊後會發生什麼?它仍然找到該項目,並使紅色不是它? – Ashwath 2014-11-21 14:41:18

+0

美麗!有用! – Konstantin 2014-11-21 14:42:10

+0

@Ashwath如果按鈕被點擊一次後div不應該是紅色的,你可以在頁面卸載localStorage卸載事件或類似 – empiric 2014-11-21 14:43:25

0

使用查詢字符串...當您單擊按鈕以及URL傳遞一個查詢字符串window.location.href =「secondPage.htm?src = btnClickl」;

並在第二頁.HTML查找SRC查詢字符串。如果pressent,改變DIV顏色...

好運...

+0

謝謝,我也會試一試。 – Konstantin 2014-11-21 14:43:23

0

的代碼應該放在第二頁上,並從調用該對象的「父」詢問是否爲空或不是,在這種情況下,如果它爲null,則可以使用PARENT對象的HREF屬性進行驗證,以查看它是否是正確的頁面,然後更改DIV的顏色。

碼在第二HTML喜歡:

$(document).ready(function() { 
if (windows.document.parent != null) 
{ 
$("div").css({background: "red"}); 
} 
}); 
相關問題