0
フランス語のフレーズを英語に翻訳する機能を呼び出す必要があります。私はshowEnglish()
で立ち往生しています。それは配列english
を引っ張らないでしょう。別のJavaScriptファイルで設定した設定機能を参照しているかどうかはわかりません。ここでJavascript機能に問題はありますか?
は、私がこれまで持っているものです。ここで
window.onload = setup;
function setup() {
var questions = document.querySelectorAll("article ol li");
for (var i = 0; i < questions.length; i++){
questions[i].id = i + "phrase";
questions[i].onmousedown = showEnglish;
//questions[i].onmouseup = showFrench;
questions[i].style.cursor = "pointer";
}
}
function showEnglish() {
var phrases = document.getElementById("phrase");
var phraseNumber = parseInt(phrases.id);
phraseNumber.innerHTML = english[phraseNumber];
phraseNumber.style.fontStyle = "italic";
phraseNumber.style.fontColor = "rgb(191, 22, 31)";
}
'phraseNumber'には、' parseInt() 'の結果を代入した後の数値が入ります。それでは、後で 'innerHTML'、' style'などのプロパティを設定することで、後でDOM要素のように扱いますか?それはあなたが期待している通りには動作しません。 – RJM
これは私が混乱しているところだと思います。ありがとう!私は戻って、それを修正するつもりです! – aisem19
'MouseDown'イベントは、呼び出されたときに' showEnglish'関数のパラメータとして渡されます。イベントとその 'id'を起動した要素を取得するには、' event.srcElement'(またはFirefoxでは 'event.target')を使用する必要があります。しかし、これを単純化してIDの使用を避けることができます。下の私の答えを見てください。 –