0

デモで ul 要素と矢印を一緒に配置することに問題があります。デモページのソースの下にある JavaScript 側からの id を持つ要素のため、<div id="ytplayer_div2"></div>間にタグを配置できません。これらを入れても、解決策がわかりませんでした。 タグ内のコンテンツはどこから来ていますか:<ul>ytplayer_div2
<div id="ytplayer_div2"></div>

      function ytplayer_render_playlist( )
  {
    for ( var i = 0; i < ytplayer_playlist.length; i++ )
    {
      var img = document.createElement( "img" );
      img.src = "track_arrow.gif";
      var a = document.createElement( "a" );
      a.href = "#ytplayer";
      a.onclick = (
        function( j )
        {
          return function( )
          {
            ytplayer_playitem = j;
            ytplayer_playlazy( 0 );
          };
        }
      )( i );
      a.appendChild( img );
      document.getElementById( "ytplayer_div2" ).appendChild( a );
    }
  }

要するに、このデモをこの写真のようにするにはどうすればよいですか?

4

1 に答える 1

1

id<ul>指定します。たとえば<ul id="mylist">、関数の先頭で、その<li>直接の子をすべて取得します。

var arrOfListNodes = Array.prototype.filter.call(document.getElementById('mylist').childNodes, function (e) {return e.tagName === 'LI';});

に追加する代わりに、関数の最後にytplayer_div2

arrOfListNodes[i].insertBefore(a, arrOfListNodes[i].firstChild);

float: left;矢印は、スタイル (の他の要素)により右側に表示されます<li>が、現在は DOM ツリーの正しい部分にあります。

于 2012-12-06T02:22:14.640 に答える