未加载DOM时显示消息

时间:2016-01-23 11:15:13

标签: google-chrome-extension firefox-addon

在页面加载开始后立即显示消息的方式是什么?可能需要1分钟才能加载html等?

这是一个机票预订网站,其中一个将开始使用银行或信用卡付款。在高峰时段,银行站点可能加载缓慢或无法加载。在此期间,我想显示一条消息,如果银行页面无法加载或继续加载一两分钟,客户可以点击该消息并立即返回预订起始页面。

付款时,客户可能已经浏览了2-4页。由于所有页面都使用POST ..使用Back按钮会出现cache-miss等错误。但是,预订起始页面可以通过GET网址到达。

2 个答案:

答案 0 :(得分:0)

在Firefox中,您可以显示通知栏,并在加载时将其删除 - https://developer.mozilla.org/en-US/Add-ons/Code_snippets/Alerts_and_Notifications#Using_notification_box

通知栏可以在所有选项卡中显示,也可以只显示在特定选项卡中,此代码仅在该选项卡中显示该栏:

var message = 'Another pop-up blocked';
var box = gBrowser.getNotificationBox();
var notification = box.getNotificationWithValue('popup-blocked');
if (notification) {
    notification.label = message;
}
else {
    var buttons = [{
        label: 'Button',
        accessKey: 'B',
        popup: 'blockedPopupOptions',
        callback: null
    }];

    let priority = box.PRIORITY_WARNING_MEDIUM;
    box.appendNotification(message, 'popup-blocked',
                           'chrome://browser/skin/Info.png',
                            priority, buttons);
}

答案 1 :(得分:0)

这个大纲应该有效:

  1. 第1页发布了第2页的请求
  2. 第2页返回一个简单的“加载”页面,并对表单进行内联AJAX请求,同时加载页面的其余部分。
  3. 来自AJAX的回调按预期填充页面(替换高级容器),或者如果经过太多时间,您可以提供建议。