我如何从这个示例
https://developers.google.com/youtube/iframe_api_reference#Getting_Started在 Dart 中创建 onYouTubeIframeAPIReady 函数?当页面完成播放器 API 的 JavaScript 下载后,API 将调用此函数。
问问题
668 次
1 回答
1
谢谢你,君特!它在 Chrome 中运行。
<!DOCTYPE html>
<html>
<body>
<div id="player"></div>
<script type="application/dart" src="ytube_iframe.dart"></script>
<!-- for this next line to work, your pubspec.yaml file must have a dependency on 'browser' -->
<script src="packages/browser/dart.js"></script>
<script src="packages/browser/interop.js"></script>
</body>
</html>
ytube_iframe.dart
import 'dart:html';
import 'dart:js' as js;
void main() {
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
js.context['onYouTubeIframeAPIReady'] = onYouTubeIframeAPIReady;
//js.context['onPlayerReady'] = onPlayerReady;
//js.context['onPlayerStateChange'] = onPlayerStateChange;
}
var player;
void onYouTubeIframeAPIReady() {
var params = {
'height': '390',
'width': '640',
'videoId': 'M7lc1UVf-VE',
/*'events': {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}*/
};
var jsParams = new js.JsObject.jsify(params);
player = new js.JsObject(js.context['YT']['Player'], ['player',jsParams]);
}
于 2014-03-16T16:04:14.957 回答