Chrome应用中的Ctrl + f(查找)

时间:2014-11-29 19:53:54

标签: google-chrome-app

是否有可能在Chrome应用中启用浏览器功能 Ctrl + F (在当前视图中查找)? 我说的是我自己写的应用程序,我真的错过了这个功能。

3 个答案:

答案 0 :(得分:2)

我认为一个例子可能很好。我也想要这个。 以下是我从上述想法中得出的结论。 我使用以下更改从Google编辑了Kiosk App示例:

HTML: enter code here                                                          

CSS:

#live-search{
  display:none;
}
.text-input{
  right: 25px;
  z-index: 10000;
  position: absolute;
  border: #000 solid 1px;
}

JS:

window.onresize = doLayout;
var isLoading = false;
var webview //made global so that I can access it easier everywhere.
onload = function() {//existing function, added more to it.

  webview = document.querySelector('webview');
  webview.addEventListener('consolemessage', function(e) {

//这会让webview发送到控制台,以便我可以看到为什么某些东西不起作用。         console.log('访客页面登录'+ e.line +“,”,e.message);       });       的doLayout();     $()。ready(function()//在这里使用jquery onload。     {         var ctrlDown = false;         var ctrlKey = 17,fKey = 70;

    $(document).keydown(function(e)//detect CTRL key.
    {
        if (e.keyCode == ctrlKey) ctrlDown = true;
    }).keyup(function(e)
    {
        if (e.keyCode == ctrlKey) ctrlDown = false;
    });

    $(document).keydown(function(e)//detect CTRL+f
    {
        if (ctrlDown && e.keyCode == fKey){
          $("#live-search .text-input").val("").focus();//clear search box
          $("#live-search").toggle();
        };
    });
    $("#live-search .text-input").keyup(function(e){//typed in search, so search.
      webview.executeScript(
        {code:   
          'window.find("'+ $("#live-search .text-input")[0].value +'",false, false, true);'
        });
    });
});

JS在另一个函数中:

function handleLoadStop(event) {//hide the search when they go to another page.
  $("#live-search").hide();

答案 1 :(得分:1)

您无法启用浏览器功能"因为Chrome App窗口不是浏览器。确实,它始终是从HTML文件初始加载的,但这并不能使它成为浏览器。您需要做的是为键盘事件设置一个处理程序(Chrome应用程序不是唯一的技术),然后在该处理程序中执行您想要的操作。您可以处理表示窗口内容的DOM,以便根据需要搜索某些内容,但这完全取决于您自己的JavaScript编码。

答案 2 :(得分:1)

如果您在应用程序中使用WebView嵌入某些页面,那么您可以使用它:

var wv = document.querySelector('webview');
wv.executeScript({code: "window.find('Some text',false, false, true);"})