私は自分のウェブサイトに夜間モードの機能を持っています。下のコードは私のウェブサイトのコードの簡単な例です。私はどのようにページの状態を保存することができるので、それはページの更新後に暗い/明るいままになるのだろうと思っていた。私はクッキーでこれをしますか?私はかつて私のウェブサイトのいずれにもクッキーを実装しておらず、本当に役立つことができました。ここでクッキーを使ってページの状態を保存する方法は?
は、スクリプトを有効にするには、その上にボタンが付いたHTMLである:ここでは
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>Ryan Simms</title>
</head>
<body>
<script src="scripts/lightSwitch.js"></script> <!-- Loads Script -->
<footer>
<button type="button" id="lightSwitchOff"></button>
<button type="button" id="lightSwitchOn"></button>
</footer> <!-- Closes Footer -->
</body>
</html>
はjavascriptのです:
document.addEventListener ("DOMContentLoaded", handleDocumentLoad);
function handleDocumentLoad() {
//Variable
var offSwitch = document.getElementById("lightSwitchOff"); //Targets div with ID lightSwitchOff
var onSwitch = document.getElementById("lightSwitchOn"); //Targets div with ID lightSwitchOn
var style = document.getElementById("pageStyle"); //Targets stylsheet
offSwitch.innerHTML = "Turn On Night Mode";
onSwitch.innerHTML = "Turn Off Night Mode";
onSwitch.style.display = "none";
//Event Listener
offSwitch.addEventListener("click", lightsOff); //When clicked this action is performed
onSwitch.addEventListener("click", lightsOn); //When clicked this action is performed
//Function
function lightsOff() { /*This changes the background colour to black and makes text white*/
style.setAttribute('href', 'css/darkStyle.css');
onSwitch.innerHTML = "Turn Off Night Mode";
onSwitch.style.display = "inline";
offSwitch.style.display = "none";
}
function lightsOn() { /*This changes the background colour to a white and makes text black*/
style.setAttribute('href', 'css/lightStyle.css');
offSwitch.innerHTML = "Turn On Night Mode";
onSwitch.style.display = "none";
offSwitch.style.display = "inline";
}
}
私はまだ私の場合の例でどうなるか少し混乱していますか? – Ryan
あなたの 'lightsOn()'関数では 'document.cookie =" lights = on ";'そして 'handleDocumentLoad()'関数で 'document.cookie'文字列を解析してif値 "on"のクッキー "lights"が含まれています。もしそうなら、 'lightsOn()'関数を呼び出します。 – ImprobabilityCast
さて、私は自分のライトで機能と消灯機能にクッキーを追加しましたが、それらを解析して何が含まれているかを確認することはできません。それは本当に私を混乱させています、私は申し訳ありません、私はクッキーを初めて知っています – Ryan