2013-02-18 39 views
0

首先:這隻需要在Mac上工作。等待外部應用程序啓動Javascript

我有一個<meta http-equiv=Refresh Content=1;url=rtsp://example.com/file.sdp應該自動問/打開QuickTime播放器。我試圖讓QuickTime播放器啓動後立即執行javascript函數。

難道只是等5秒鐘?

否:在safari中這可能沒問題;在Chrome和Firefox我想這要等到啓動應用或確定按鈕被按下時執行的JavaScript函數之前

感謝

+0

只要在qt啓動後需要另一個用戶點擊,你會更安全。你想要的只是不可能的。 – bfavaretto 2013-02-18 01:25:26

+0

@bfavaretto那麼你的意思是說,唯一可行的方法就是讓它出現在啓動應用程序提示符下顯示的對話框? – zggz12 2013-02-18 01:29:57

+0

*提示後,實際上。瀏覽器無法控制外部應用程序,因此您必須依賴用戶告訴您QuickTime已啓動。 – bfavaretto 2013-02-18 01:37:18

回答

0

你可以換的什麼,在觸發JavaScript的超時

setTimeout (expression, timeout); 

例如:

function hello() { 
    alert('hello'); // or play anything. 
} 
setTimeout(hello, 5000); // unit in miliseconds (5000 means 5 seconds) 
+0

正如我之前所說:這將在safari中工作,但不會在Chrome/Firefox中由於'launch application'的提示而出現。我需要代碼在QuickTime播放器開始啓動後才執行。 ..我不知道還有什麼你可以等待那個野生動物園然後不會拋出一個錯誤...你們可以拿出任何東西,雖然 – zggz12 2013-02-18 01:19:12

+0

啊,我明白了,你的意思是黃色的酒吧在頂部提示你?我認爲它是瀏覽器的隱私偏好,你不能強迫瀏覽器這樣做。如果您找到解決方法,該怎麼辦?首先運行該功能。 *然後*播放內容? – 2013-02-18 01:32:07

+0

這裏的文檔[Apple鏈接](https://developer.apple.com/library/mac/#documentation/quicktime/Conceptual/QTScripting_JavaScript/bQTScripting_JavaScri_Document/QuickTimeandJavaScri.html#//apple_ref/doc/uid/TP40001526-CH001- SW3),允許從QuickTime播放器回撥。但它指向損壞的源文件。 AC_QuickTime.js .. – 2013-02-18 01:35:04

0

謝謝大家的答案。我要展示我最終在這裏做的事情。

<meta http-equiv=Refresh Content=1;url=rtsp://####.com/####.sdp /> 

<script type='text/javascript'> 
function checkfinish() { 
var answer = confirm('Finished with this page?') 
if (answer) 
    window.location = "previous-page" 
} 
setTimeout (checkfinish, 5000) 
</script> 

我想通了,我做錯了什麼:

Trying to do this! 

我決定的,而不是讓它自動重定向;讓它留下一個按鈕返回到底部的上一頁。

感謝所有幫助。