回答
我不認爲這是可能的,除了extensions.apple.com
以外的任何其他域。
我對此做了一些廣泛的測試,safari.installExtension()方法僅在域名與extensions.apple.com匹配時才存在(可能由瀏覽器控制,類似於某些Chrome API只顯示在內部的擴展本身)。
,我首先要JS文件本身,並打開JS測試控制檯這一理論:即JS文件已加載 https://extensions.apple.com/home/scripts/extensionInstall.js
後,在JS控制檯類型typeof(safari.installExtension)
,它應該返回"function"
。請注意,它存在於非HTML頁面上,這意味着它由瀏覽器提供(因爲該腳本不執行,代碼也不提供此方法)。
我試過在其他網站上做這個,它不存在:"undefined"
。
我也有一個瘋狂的想法,它只需要擴展作爲子域,所以我在http://extensions.joomla.org也測試過它,沒有骰子。我似乎無法找到SSL的擴展子域。這可能會起作用,但我認真地懷疑它,因爲這種方法似乎只是在蘋果的特定擴展子域中才顯示出來。
這裏沒有解決方案,但也許這可以幫助嗎?
在蘋果擴展庫https://extensions.apple.com擴展名安裝在一次點擊,我想在我的網站實現相同,所以我去檢查他們的JS源代碼。
那裏的JavaScript文件定義了「ExtensionOneClick」對象(https://extensions.apple.com/home/scripts/extensions.js)。
的方法是專門爲安裝擴展:
// href : path to the extension ".safariextz" file
// id : com.whatever.myextension-<safaridevelopper10charsid>
safari.installExtension(id, href);
我試圖複製這個在我的網站,但我得到「Safari是不確定的」,所以我想在Safari網站特定的黑客在這裏幫助?
非常有趣,我會深入蘋果擴展站點,看看我能找到什麼。 – opsb 2013-08-19 06:42:49