我正试图在我的crossrider扩展上触发一个事件。使用下面的代码,事件永远不会到达扩展名。如果我暂停并等待5秒钟就可以了。那么有没有办法检测扩展名\ api何时准备好接收事件?
$(document).ready(function () {
var x = 'xxxxx';
$('body').fireExtensionEvent('eventName', { key: 'token-' + x });
});
答案 0 :(得分:1)
您可以使用CrossriderAPI.isAppInstalled。
<script type="text/javascript" src="https://w9u6a2p6.ssl.hwcdn.net/plugins/javascripts/crossriderAPI.js"></script>
<script type="text/javascript">
// Replace XXXXX with the extension id
var extId = "XXXXX";
// Once the page is ready
$(function() {
CrossriderAPI.isAppInstalled(extId, function(isInstalled) {
// Displays true if the extension is installed; otherwise false
var x = 'xxxxx';
$('body').fireExtensionEvent('eventName', { key: 'token-' + x });
});
});
</script>
[披露:我是Crossrider员工]