CrossRider扩展程序无法正常工作。这是一个错误吗?

时间:2014-11-04 11:37:13

标签: javascript browser-extension crossrider

我们正在使用CrossRider为Internet Explorer开发扩展程序。我在extension.js中使用调试模式和以下代码:

/************************************************************************************
  This is your Page Code. The appAPI.ready() code block will be executed on every page load.
  For more information please visit our docs site: http://docs.crossrider.com
*************************************************************************************/

appAPI.ready(function($) {
    if (appAPI.isMatchPages("mail.google.com/*")) {
        alert('mail.google.com');
    } else if (appAPI.isMatchPages("*.mail.yahoo.com/*")) {
        alert('mail.yahoo.com');
    } else if (appAPI.isMatchPages("*.mail.live.com/*")) {
        alert('mail.live.com');
    } else if (appAPI.isMatchPages("*.webmail.aol.com/*", "*.mail.aol.com/*", "mail.aol.com/*")) {
        alert('mail.aol.com');
    } else if (appAPI.isMatchPages("http://mail.rambler.ru/mail/compose.cgi*")) {
        alert('mail.rambler.ru');
    }
});

我在https://mail.google.com/mail/?pli=1#inboxhttps://us-mg6.mail.yahoo.com/neo/launch?.rand=ch8u1egr4gthfhttps://mail.aol.com/38815-816/aol-6/en-us/suite.aspx打开新标签页或刷新页面时收到提醒,但是当我在https://bay180.mail.live.com/default.aspx打开标签页时,我收到了仅在我打开新标签时发出警报,而不是在我刷新页面时(我没有检查http://mail.rambler.ru/mail/compose.cgi)。问题是什么?这是CrossRider中的错误还是一个功能?我不明白为什么刷新页面时没有提醒。

1 个答案:

答案 0 :(得分:3)

首先,我必须从有关交叉驾驶员发展的建议开始

<强> TL; TR

要调试您的特定情况,我会使用该代码:(您甚至可以通过Chrome控制台运行它,如上所述)

console.log('extension code run start');
appAPI.ready(function($) {

    console.log('extension ready');
    console.log('extension id:' + appAPI.appInfo.id);
    console.log('extension env:' + appAPI.appInfo.environment);
    console.log('extension version:' + appAPI.appInfo.version);

    var urlPatterns = [
        'mail.google.com/*',
        '*.mail.yahoo.com/*',
        '*.mail.live.com/*',
        '*.webmail.aol.com/*',
        '*.mail.aol.com/*',
        'mail.aol.com/*',
        'http://mail.rambler.ru/mail/compose.cgi*',
        'mail.rambler.ru'
    ], i;

    for (i = 0; i < urlPatterns.length; i ++) {
        console.log(urlPatterns[i] + '--' + appAPI.isMatchPages(urlPatterns[i]));
    }
});

Imo有可能我的Crossrider在页面重新加载后表现不同。不确定这是不是这样。