2016-05-16 33 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() 
{ 
    // ... 
}