2016-04-21 10 views
0

私は何時間もこれを探してきましたが、何も見つかりませんでした。すべての継承を使用してDOM要素をJavaScriptクラスに変換

私は(ブートストラップと同様の)プレミード要素のセットを作っています。これらの要素のすべてのアニメーションをjQueryとJavaScriptで処理したいと考えています。

これらの要素はすべてDFrame、DCategory、DButton、DPanelの名前を持ちます。 私は、onclick、onload、onhoverなどの関数と共に、javascriptでクラスのセットを作成しました。

私の問題は非常に簡単です。上記のクラスのすべてのDOM要素をjavascriptクラスに変換し、したがって、すべての関数を継承し、要素(elem.doFunc())の実行機能が機能します。

私が試した:が生じた明白な理由のために

document.getElementsByClassName("dbutton")[0] = new DButton(); 

:またはこれらの線に沿って何か「(elem.test)が定義された関数ではありません」。

ありがとうございました!

@Edit: ここでは一例ですが、多分それはそれは少し明確にされます:私は、DOM要素ではJavaScriptオブジェクトではありませんと言って、それで刺しを取るつもりです

function initialize() 
{ 
    document.getElementsByClassName("dbutton")[0] = new DButton(); 
    document.getElementsByClassName("dbutton")[0].test(); 
} 
document.addEventListener('DOMContentLoaded', initialize, false); 

/* 
    Classes 
*/ 

class DFrame 
{ 

} 

class DCategoryList 
{ 

} 

class DButton 
{ 
    test() 
    { 
    console.log("shows, output, etc"); 
    } 
} 
+0

ブートストラップには独自の要素がありません。単に、htmlにクラスを追加するだけです。 –

+0

それは私が言ったことです。 – Netheous

+0

あなたは[XY問題](https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)の犠牲者になるかもしれないと思います。それについて[ここ](http://mywiki.wooledge.org/XyProblem)。 –

答えて

0

。 dom要素をjavascriptのインスタンスに等しく設定することは、私のcarをjusticeのインスタンスに設定することと同じです。

+0

私は同意します - 最悪の場合のシナリオでDOM要素をクラスに置き換えて、javascriptがそれを何か違うものとして見ることができないため、そのようにはうまくいかないことはわかっています。 私はちょうど私がサブ要素を作成し、変数に模倣するものを保存する必要がありますすべての要素のために多分そうすることができるソリューションを考えていますか? ようこそ:mybutton.rep = dom要素 – Netheous

関連する問題