2010-01-02 116 views
0

我想在用户创建书签时在Chrome中显示模式JavaScript对话框。但是,在尝试Closure和SimpleModal + JQuery之后,我似乎无法看到一个对话框出现。这是Chrome中扩展的限制,还是我做错了什么? (我仍然在学习Javascript,所以我缺乏理解这可能是其原因。)来自Chrome扩展程序的显示对话框

这是我的代码使用Closure。它确实把它变成了函数,所以这个工作没问题。有什么建议么?谢谢!

<html> 
    <head> 
     <script src="./lib/closure-library/closure/goog/base.js"></script> 
     <script type="text/javascript" src="./lib/closure-library/closure/goog/deps.js"></script> 
     <script>goog.require('goog.ui.Dialog');</script> 
     <script type="text/javascript"> 
      chrome.bookmarks.onCreated.addListener(function(id, bookmark) { 
       // Setup the dialog box. 
       var dialog1 = new goog.ui.Dialog(); 
       dialog1.setContent('[Insert Placeholder]'); 
       dialog1.setTitle('Title Placeholder'); 

       // Display dialog. 
       dialog1.setVisible(true); 
      }); 
     </script> 
    </head> 
    <body> 
     <!-- Do Nothing --> 
    </body> 
</html> 

回答

2

澄清穆罕默德的回答了一下,闭包的模式对话框是页内HTML。这实际上可能在你的代码中起作用,但是由于你是在后台页面中进行的,并且后台页面不可见,所以你不会看到它。您可以使用背景页面中使用window.open或window.alert的技术,但不能尝试向用户显示交互式HTML。为此,您需要将内容放入弹出窗口或Mohamed建议的页面中。

+0

我赞赏澄清(+1)。使用来自Mohamed的信息,我能够获得一个对话框来显示(好,有点 - 看起来不正确,但至少有东西在那里),虽然它在页面加载时会显示,而不是当我实际添加书签(它似乎是任意的)。这对我来说是一个关键点。我乐于接受建议,但我也没有时间真正玩弄它(生活一直很忙),所以它可能很简单。 – JasCav 2010-01-12 17:51:54