これはStackOverflowに関する私の最初の質問です。私は、Javascriptを初めて使用し(コーディングの感覚をつかむためにPythonを学んでいます)、簡単なWebアプリを試して、自分の翻訳がいかに簡単かを確認したいと思いました。 PythonからJavascriptへの知識。
基本的に、アプリはあなたの好きな果物などが季節になったことを知らせます。そのため、あるページの「fruitpicker.html」にチェックボックスのリストがあり、別の「seasonalguide.html」に対応する画像があります(画像は、果物の季節が影付きになっているカレンダーの写真などです)。
チェックボックスの状態を保持するCookieと、対応するチェックボックスの状態に応じて画像の表示を切り替える外部JSがあります。他の誰かがウェブ上で使用していたCookieのほとんどはうまく機能しますが、JSの画像が問題を引き起こしています。
あるべきだと思うものを書きましたが、うまくいきませんでした。いくらいじっても何も起こりません。
それは本当にばかげたものだと確信していますが、とにかく、ここにコードがあります...
JSに対する壊れた画像:
function toggleVisibility(checkId, imageId) {
var imgEl = document.getElementById(imageId);
var checkEl = document.getElementById(checkId);
if (checkEl.checked) {
imgEl.style.visibility="hidden";
imgEl.style.display="none";
}
else {
imgEl.style.visibility="visible";
imgEl.style.display="inline-block";
}
}
ちなみに、行:var checkEl = document.getElementById(checkId);
が削除された場合、コードは機能しますが、画像の状態は持続しません。これは私が得た限りです。
Fruitpicker.htmlのチェックボックスのいくつか:
<html>
<head>
<title>Fruit Picker</title>
<script type="text/javascript" src="cookie.js"></script>
</head>
<body onload="restorePersistedCheckBoxes();">
<label for= "chklogo">Braeburn</label>
<input type= "checkbox"
id= "chkBraeburn"
onChange= "toggleVisibility('braeburnItem');
toggleVisibility('braeburnSeason');
persistCheckBox(this);" /><br>
<label for= "chklogo">Fuji</label>
<input type= "checkbox"
id= "chkFuji"
onChange= "toggleVisibility('fujiItem');
toggleVisibility('fujiSeason');
persistCheckBox(this);" /><br>
<label for= "chklogo">Golden Delicious</label>
<input type= "checkbox"
id= "chkgolldenDelicious"
onChange= "toggleVisibility('goldenDeliciousItem');
toggleVisibility('goldenDeliciousSeason');
persistCheckBox(this);" /><br>
<label for= "chklogo">Granny Smith</label>
<input type= "checkbox"
id= "chkGrannySmith"
onChange= "toggleVisibility('grannySmithItem');
toggleVisibility('grannySmithSeason');
persistCheckBox(this);"/><br/>
</body>
</html>
そしてここに季節ガイドページがあります:
<html>
<head>
<script type="text/javascript" src="cookie.js"></script>
<script type="text/javascript" src="imageVisibility.js"></script>
</head>
<body>
<img id="imgGuide"
src="Images/Calendar/calendarHeader.png"
align="left"/>
<img id="braeburnItem"
src="Images/Produce/Fruit/BraeburnApple.png"
style="float:left; display:none;" />
<img id="braeburnSeason"
float="top"
src="Images/InSeason/InSeasonApr.png"
align="left"
style="display:none"/>
<img id="fujiItem"
src="Images/Produce/Fruit/FujiApple.png"
style="float:left; display:none;" />
<img id="fujiSeason"
float="top"
src="Images/InSeason/InSeasonMar.png"
align="left"
style="display:none;"/>
<img id="goldenDeliciousItem"
src="Images/Produce/Fruit/GoldenDeliciousApple.png"
style="float:left; display:none;"/>
<img id="goldenDeliciousSeason"
src="Images/InSeason/InSeasonFeb.png"
align="left"
style="display:none;"/>
<img id="grannySmithItem"
src="Images/Produce/Fruit/GrannySmithApple.png"
style="float:left; display:none;"/>
<img id="grannySmithSeason"
src="Images/InSeason/InSeasonApr.png"
align="left"
style="display:none;"/><br>
<table width="170px" height="70px">
<tr>
<td>
<a href="Main.html" id="back" title="about" class="button">
<img src="Images/Buttons/backButton.png" align="right">
</td>
</tr>
</table>
</body>
</html>
質問が長くなっていたので、私はクッキーを含めませんでしたが、それが有用であるならば、私はそうすることができます。助けていただければ幸いです、ありがとう