2016-11-23 10 views
0

DOM内の要素を作るJavaScript Objectを作成しました。私のメソッドを使用する方法は、たとえばオーディオを再生し、オーディオの長さを設定するなどです。しかし、私が作成したメソッドオブジェクトは明らかに存在しない。ちなみに、私は新しいので、私は本当に私が間違っていたかわからない...しかし、ここに私のコードは次のとおりです。事前にJavaScriptのメソッドですか?

function Audio(paramSource) { 
    var object = document.createElement("audio"); 
    (...) 
    function play() { 
     object.play(); 
    }; 
    (...) 
}; 

var myAudio = new Audio("http://tufda.net/space/limewire.mp3"); 
myAudio.play(); 

感謝:)!

+1

特に存在しない方法はありますか? FYI: 'new Audio'メソッドは既に存在しています(https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement)、それを上書きしないでください。 – adeneo

+0

@adeneo Audio.play()メソッドについて興味がありましたら、私はおそらくそれを指摘していたはずです – tufda

答えて

1

閉じると、プロパティとしてオブジェクトに割り当てる必要があります。このような何か:

function Audio(paramSource) { 
    var object = document.createElement("audio"); 
    //... 
    this.play = function() { 
     object.play(); 
    }; 
    //... 
}; 

関数は変数のように宣言することができ、かつAudioオブジェクトに対して公にそれ(だけでなく、独自の範囲内であることの)あなたは、単にthis上のプロパティにその変数を設定しますを公開しますその範囲内で

そこで、上記のコードでは、objectAudioの範囲に可変内部にあり、playAudioのプロパティあります。あなたが外からAudio.objectにアクセスすることができます。このところで

function Audio(paramSource) { 
    this.object = document.createElement("audio"); 
    (...) 
    this.play = function() { 
     this.object.play(); 
    }; 
    (...) 
}; 

var myAudio = new Audio("http://tufda.net/space/limewire.mp3"); 
myAudio.play(); 

1

あなたがオブジェクトにobject VARを割り当てることができます。

関連する問題