現在、HTMLとjavascriptを組み合わせて
「同じ画面上だがどのリンクを踏んで来たかによって、表示される背景色が変わる」という仕様を作ろうとしております。
ですが、色が片方に固定されてしまい、予定の挙動となりません。
どのようにすれば、そうした挙動が得られるでしょうか?
背景色は必要性からMaterial Design Liteを用いております。
そのため、CSSではなく、classを変更する形で対応しております。
in.htmlにあるredかblueのボタンでリンクへ移動すると
out.htmlの背景色が変わる形にしようとしています。
in.html
<script type="text/javascript"> function red() { document.cookie = "red"; } function blue() { document.cookie = "blue"; } </script> <body> <a onclick="red(); return true; " href="out.html"> red </a> <br> <a onclick="blue(); return true; " href="out.html"> blue </a> </body>
out.html
HTML
1<script type="text/javascript"> 2var myfunc = function(){ 3var myp = document.getElementById("myid"); 4myp.innerHTML = "'+ cookies '"; 5} 6function onload() { 7var cookies = document.cookie; 8document.getElementById("msg").innerHTML = " " + cookies; 9} 10function changeBackColor(){ 11var elements = document.getElementsByClassName('c'); 12if((myp = 'red')) { 13for(i=0;i<elements.length;i++){ 14elements[i].classList.add('mdl-color--red-200'); 15}} 16if((myp = 'blue')) { 17for(i=0;i<elements.length;i++){ 18elements[i].classList.add('mdl-color--blue-200'); 19}} 20else {} 21} 22</script> 23 24<body onload="onload(); changeBackColor();" class="c" > 25 <span class="sub-title-font" id="msg"></span> 26</body> 27 28<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> 29<link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.indigo-pink.min.css"> 30<script defer src="https://code.getmdl.io/1.3.0/material.min.js"></script>
自分の技術ではソースコードに問題があるのか、方法自体に問題があるのか判別がつきません。
classの変更について良い手法をご存知の方がいれば、ご教授願えないでしょうか。
回答1件
あなたの回答
tips
プレビュー