2016-05-16 13 views
-1

このコードは、範囲入力とテキストノードを作成するためのものです。入力範囲は変更したい速度の値ですが、コードを実行するとsetmyspeed()は定義されていません。設定スピードが設定されていないYoutubeスクリプト

//Better youtube 
//Creating elements 
function createtext() { 
    var text = document.createTextNode("Speed:"); 
    document.getElementById("eow-title").appendChild(text); 
} 
function createrange() { 
    var input = document.createElement("input"); 
    input.setAttribute("id", "speedrange"); 
    input.setAttribute("type", "range"); 
    input.setAttribute("onchange", "setmyspeed()"); 
    input.setAttribute("max", "5"); 
    input.setAttribute("step", "0.1"); 
    input.setAttribute("min", "0.1"); 
    input.setAttribute("value", "1"); 
    document.getElementById("eow-title").appendChild(input); 
} 
//Running the fuctions 
createtext() 
createrange() 
//Feature functions 
setmyspeed() 
{ 
    var video = document.getElementsByTagName("video")[0]; 
    var speed = document.getElementById("speedrange").value; 
    video.playbackRate = + (speed); 
    document.getElementsByTagName("p").innerHTML = "Speed:(" + speed + ")"; 
} 

答えて

0

createtext()createrange()setmyspeed()メソッドのすべての呼び出しです。 createtext()またはcreaterange()にエラーが発生していないのは、これらの機能が作成された開始行function createtext() {...およびcreaterange() {....で作成されているためです。

ではなく、setmyspeed()が作成されています。

setmyspeed()呼び出しの前に次のコードを追加すると、エラーは消えますが、何かを行わせるために、コードを角かっこに入れる必要があります。

function setmyspeed() { 
    //your code here 
} 
0

は機能setmyspeed()

setmyspeed() 
{ 
    // ... 
} 

が存在しないためにですが、コードをラップするために機能するために呼び出すと、無用括弧です。 setmyspeed()の前にfunctionキーワードがありません:

function setmyspeed() 
{ 
    // ... 
} 
関連する問題