[英]cefsharp execute Javascript from C#
我正在嘗試在Windows窗體應用程序中播放在線視頻。 我可以成功播放視頻,但我想使其全屏顯示。
網址是這樣的:
http://www.mitele.es/msplayer/popup/?editorialId=231609
我一直在檢查站點,發現擴展按鈕的代碼是這樣的:
<button ng-if="fullScreenBtIf" class="fullscreen-bt msplayer-icon-fullscreen ng-scope" title="Pantalla completa" ng-click="toggleFullscreen()" ms-skin-button="" style="color: rgb(5, 187, 237); opacity: 1;"><span class="screen-reader-text">Ir a pantalla completa</span> </button>
CEFsharp運行正常,因為我已經過警報測試:
myBrowser.ExecuteScriptAsync("alert('test');");
我嘗試通過以下方法擴展視頻播放器:
myBrowser.ExecuteScriptAsync("toggleFullscreen();");
但我知道toggleFullScreen是未定義的。 您有什么想法可以實現這一目標嗎?
您的問題是范圍之一,但是如果沒有用戶輸入,就不可能使其全屏顯示。 打開您鏈接的視頻,打開瀏覽器控制台並運行...
MSPlayer.scopes[Object.keys(MSPlayer.scopes)[0]].toggleFullscreen();
那會在正確的范圍內執行該功能,但也會向您解釋為什么它無法運行。
在Chrome中...
無法在“元素”上執行“ requestFullScreen”:API只能由用戶手勢啟動。
但是,由於這是Windows窗體應用程序,因此您可以使窗體在運行時最大化,並將Webview停靠在窗體上,以使html頁面全屏顯示,然后注入以下腳本來調整視頻大小...
$("div").eq(0).css({
position: "absolute",
top:0,
left:0,
width:"100%",
height:"100%"
});
這將使視頻適合已經最大化的頁面和形式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.