私の背景:数年前にCSS & HTMLを学び、Javascript & JQueryを学んでいます。現在、私の会社の電子商取引のウェブサイトを改善する必要があります。split()undefinedイベントとonclickイベントでJavascriptコードを修正するにはどうすればよいですか?
ここに私がしていることがあります。
私は製品の写真(窓の中にある)といくつかの色のボタンがある製品ページを持っています。
カラーボタンをクリックすると選択されますが、写真は変更されません。
あなたはおそらく、私はあなたがそれにマッチするカラーを選択/クリックすると、製品の絵を示したコードを追加したいをそれを推測。
私はJSコードとそれの背後にあるアイデアを書いて、画像のURLを分離し、色に対応するもので変更することです。
このエラーが発生するのは、です。キャッチされていないTypeError:未定義のプロパティ 'split'を読み取ることができません。
私は解決策を探しましたが、いずれも私の問題に対応していないようです。したがって、私は助けが必要です。ここで
は、HTML(製品の画像を表示するウィンドウ/ブロック)です:
<div
style="z-index: 999;
overflow: hidden;
margin-left: 0px; margin-top: 0px;
background-position: -144px 0px;
width: 456px; height: 343px;
float: left;
cursor: crosshair;
background-repeat: no-repeat; position: absolute;
background-image: url("https://be-goji.com/wp-
content/uploads/2017/01/OSSO-ROSE.jpg");
top: 0px; left: 0px; display: none;"
class="zoomWindow">
</div>
は、ここで私は(コメント)それを修正するために書いたJavaScriptコードの抜粋です:
// isolates the HTML from the window
var colorSwitch = document.getElementsByClassName('zoomWindow');
// splits the code in several strings in an array
var colorSwitchUrl = colorSwitch[0].split(';')
// extracts the string I want to change
var colorSwitchChange = colorSwitchUrl.slice(12,13);
// gets the element I want to put the event onto
var chooseColorNoir = document.getElementsByTagName('label');
//function that brings picture to show in the window on click
chooseColorNoir[0].onclick = function(){
// makes the string disappear
colorSwitchChange.pop();
// replaces it with a good one
colorSwitchChange.push("https://be-goji.com/wp-
content/uploads/2017/01/coco_noir.jpg");
};
どこに問題があるのかを教えてください。お勧めの別の方法がありますか?
ありがとうございます!
ナット
注:それはページ上で利用できないので、私はURLで画像を呼び出すために持っています。
この 'colorSwitch –
、bodyタグの下の内部スクリプトタグを使用してJSを追加してみてください[0] 'は何も返さない。コードが実行されるときに、クラス名がzoomWindowの要素は見つかりません。表示されて消えるものは何ですか? – Archer
あなたは私達にサイトへのリンクを教えてもらえますか? – Archer