2009-07-07 19 views
22

Tình huống: here, nơi tôi đã nhấn một số video.Làm thế nào tôi có thể dừng video bằng Javascript trong Youtube?

Vấn đề: Tôi cố gắng để ngăn chặn các video bằng Javascript trong giao diện điều khiển của Firebug:

player.stopVideo(playerid):Void [1] [2] 

Câu hỏi: Tại sao không phải là lệnh trên làm việc?

[1] Source cho phần "player.stopVideo(): Void"

[2] Tôi trông có vẻ playerid với Firebug từ nguồn.

Trả lời

29

Video của bạn đang yêu cầu bật/tắt JSAPI, vì vậy bạn rất gần! Tất cả những gì bạn cần là một tham chiếu hợp lệ cho trình phát được nhúng. Kiểm tra trang của bạn đã tiết lộ rằng bạn đang sử dụng id phần tử HTML DOM của "playerid" để xác định trình phát của bạn.

Ví dụ:

<embed id="playerid" width="100%" height="100%" allowfullscreen="true" allowscriptaccess="always" quality="high" bgcolor="#000000" name="playerid" style="" src="http://www.youtube.com/apiplayerbeta?enablejsapi=1&playerapiid=normalplayer" type="application/x-shockwave-flash"> 

Để có được một tham chiếu đến các cầu thủ và sau đó dừng video sử dụng đoạn mã sau:

var myPlayer = document.getElementById('playerid'); 
myPlayer.stopVideo(); 
+0

Rất tuyệt! Cảm ơn rất nhiều! –

+0

Câu: "Video của bạn đang yêu cầu bật/tắt JSAPI, vì vậy bạn rất gần!" Vì vậy, nó không hoạt động mà không có API được kích hoạt? –

+0

Vì vậy, tôi chỉ có thể kiểm soát những thứ như trên trang web, nếu nhà phát triển đã thiết kế một API trên đó? Tôi cảm thấy kỳ lạ vì JS đang chạy trên máy khách. Tại sao không thể kiểm soát JS trên bất kỳ trang web tùy ý nào mà không bật JS API? –

5

Các công trình sau đây tốt, thử nghiệm trên máy chủ wamp. Chỉ cần thay thế ID gồm 11 chữ số trong dòng sau bằng ID của video bạn muốn phát.

http://www.youtube.com/v/***LpbzbyGjJGE***?enablejsapi=1&version=3&playerapiid=ytplayer 

Chúc may mắn.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 

<body> 

<a href="#" onclick="var myPlayer = document.getElementById('playerid'); myPlayer.pauseVideo();">Pause</a> 
<a href="#" onclick="var myPlayer = document.getElementById('playerid'); myPlayer.playVideo();">Play</a> 
<embed id="playerid" width="500px" height="400px" allowfullscreen="true" allowscriptaccess="always" quality="high" bgcolor="#000000" name="playerid" style="" src="http://www.youtube.com/v/LpbzbyGjJGE?enablejsapi=1&version=3&playerapiid=ytplayer" type="application/x-shockwave-flash"> 
</body> 
</html> 
+0

Tốt nhất trả lời 10/10. Cảm ơn. – mrbubl3s

+0

không hoạt động gần đây –

0

Vì vậy, đây là cách nhanh nhất để thực hiện!

Tùy chọn nhà phát triển mở

Di chuột qua nút phát YouTube.

Nhấn Control/Command + Shift + C

Chọn nút

Thêm id với nó.

Chuyển tới bảng điều khiển và chạy sau

var x = document.getElementById ('id'); x.click();

Vậy đó!

Các vấn đề liên quan