2012-05-06 66 views
1

我已經從服務器動態構建的html表。最終它給了我一張如下的表格:jquery點擊播放視頻

<div id="player"></div> 

<table id="webcam-table"> 
      <thead> 
      <tr> 
       <th>Camera Name</th> 
       <th>Date Created</th> 
      </tr> 
      </thead> 
      <tbody>    
      <tr > 
       <td onclick="DoNav('http://myserver.com:1935/recordings/myfile1.mp4');"> 
        Default camera 
       </td> 
       <td onclick="DoNav('http://myserver:1935/recordings/myfile1.mp4');"> 
        06 May 2012 07:25:01 
       </td> 
       </tr> 

      <tr > 
       <td onclick="DoNav('http://myserver.com:1935/recordings/myfile2.mp4');"> 
        Default camera 
       </td> 
       <td onclick="DoNav('http://myserver.com:1935/recordings/myfile2.mp4');"> 
        06 May 2012 07:24:47 
       </td> 
       </tr> 
</tbody></table> 

如果有人點擊表格上的行,它會調用DoNav函數來插入視頻。

function DoNav(theUrl) 
{ 
    var mydiv = $("#player"); 
    var myvideo = $("<video id='myfileplayer' src='"+ theUrl +"' width='280' height='200' controls></video>"); 
    $mydiv.append($myvideo); 
    $(myvideo).click(function(){ 
     $mydiv.show(); 
}); 
} 

我目前沒有視頻,如果我點擊任何行。我爲iDevices創建這個代碼,所以我很難得到任何調試信息。但它似乎沒有顯示任何JavaScript錯誤。我究竟做錯了什麼?

回答

1
function DoNav(theUrl) 
{ 
    var mydiv = $("#player"); 
    var myvideo = $("<video id='myfileplayer' src='"+ theUrl +"' width='280' height='200' controls></video>"); 
    mydiv.append(myvideo); 
    $("#myfileplayer").click(function(){ 
     //$(this).load(); //active this later 
     $(this).play(); 
    }); 
} 
1

代替$mydiv.append($myvideo);嘗試mydiv.append($myvideo); 也改變$(myvideo).clickmyvideo.click$mydiv.show();mydiv.show();

2

看起來你與$

var mydiv 

引用您的變量可以通過mydiv.property$mydiv.property訪問

您應該查看jQuery on函數,而不是使用onclick來標記每個表列。