2012-05-12 12 views
0

で私はこのようなコードの一部を見た:のHTML5 TRファイル属性

var pl = document.createElement('tr'); 
... 
pl.file = f; 
pl.onclick = function(e){ 
    if(e && e.button == 1){ 
     pl.parentNode.removeChild(pl); 
    }else{ 
     var url; 
     if(window.createObjectURL){ 
      url = window.createObjectURL(f) 
     }else if(window.createBlobURL){ 
      url = window.createBlobURL(f) 
     }else if(window.URL && window.URL.createObjectURL){ 
      url = window.URL.createObjectURL(f) 
     }else if(window.webkitURL && window.webkitURL.createObjectURL){ 
      url = window.webkitURL.createObjectURL(f) 
     }      
     $("player").src = url; 
     $("player").play(); 
    } 
} 

それは、オーディオプレーヤーのためです。 tr要素にファイル属性があると思っていましたか?私はインターネットを検索したが、何も得られなかった。

+0

私はあなたの質問を完全に理解しているかどうかはわかりません。私はpl.fileは単に動的なメンバーを作成していると思います。 – tzerb

+0

私は、plはスクリプトによって動的に作成されたtr要素だと思います。 – panda

+0

ええ、何が問題なのですか? pl.HereIAm = "ここにいる"を作成してから警告することができます(pl.HereIAm)。それは仕事中のJavaScriptの動的性質です。 – tzerb

答えて

1

いいえ、<tr>要素にはfile属性がありません。あなたはそれが有効だ、属性の名前としてdata-fileを使用してHTML5のそれに非常に近い何かを行うことができます

<tr file="http://example.com/file.txt"> 

:これは、以下の(不正な)HTMLを書くべきではありませんを意味します。

<tr data-file="http://example.com/file.txt"> 

しかし、あなたは(おそらく)、あなただけのこと<tr>を表すJavaScriptオブジェクトを取って、それに財産– ない属性を追加しているマークアップのことはありません。実際の属性(data-fileなど)を操作するには、setAttributegetAttributeを使用する必要があります。

+0

これは私が彼が最初にやりたかったと思っていたものですが、彼はコードを見つけたと言いました。彼はそれを書いていない。 – tzerb

+0

はい、質問は奇妙です。私の編集された答えがそれを明確にすることを願っています。 – bfavaretto

+0

ああ、私はタグの属性がW3Cの属性リストによって制限されていると思った。だから私はこのファイル属性に苦しんでいた。 – panda

関連する問題