0

以下のコードとファイル スニペットを使用して、最初の Chrome 拡張機能を作成します。

マニフェスト.json

{
"name": "Test",
"version": "0.1",
"manifest_version": 2,
"description": "First try",
"browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
    }
}

popup.html

<!doctype html>
<html>
<head>
<title>Getting Started Extension's Popup</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script src="jquery.js"></script>
<script src="popup.js"></script>
</script>
</head>
<body>
    <input id="input1">
    <input id="input2" type="submit">
</body>
</html>

popup.js

    $(document).ready(function() {
        $('#input2').click(function(){
             alert('test');
             var whatISearch = $('#input1').val();
             //chrome.tabs.create({'url': "https://www.google.com/search?s=" + whatISearch});
             window.open("https://www.google.com/search?s=" + whatISearch);
        });
    });

ご覧のとおり、私がすべきことは、Google 検索結果ページを新しいウィンドウで開いてユーザー検索入力を行うことですが、残念ながら私にはうまくいきません。

4

4 に答える 4

0

入力 ID の先頭から # 記号が欠落しており、クリックしたときではなく、whatISearchクリックする前に入力しています。input2これを試して...

$('#input2').click(function(){
    var whatISearch = $('#input1').val();
    window.open("https://www.google.com/search?s=" + whatISearch);
});

また、input1テキスト入力と同様にval()、 ではなく値を取得するために使用しますinnerText

于 2013-05-13T16:08:06.850 に答える
0

Chrome 拡張機能でタブを開くには、次のchrome.tabs.create関数を使用できます。

$('#input2').click(function(){
     var whatISearch = $('#input1').val();
     chrome.tabs.create({'url': "https://www.google.com/search?s=" + whatISearch});
});
于 2013-05-13T16:08:21.350 に答える
0

JQueryのIDセレクターは#で動くので修正して使う

$('#input1').innerText;

また、送信ボタンのクリックでウィンドウを開くので、以下のようにコールバック関数内のinput1値のみを読み取ります。

$('#input2').click(function(){
     var whatISearch = $('#input1').innerText;
     window.open("https://www.google.com/search?s=" + whatISearch);
});
于 2013-05-13T16:10:05.223 に答える
0

#jQuery id セレクターは:で始まります。

$('#input1')

何が起こるかを確認する解決策はdebugger;、コレクションの内容とコールバックが呼び出されているかどうかを確認できるようにすることです。

var whatISearch = $('#input1').innerText;
debugger;
$('#input2').click(function(){
     debugger;
     window.open("https://www.google.com/search?s=" + whatISearch);
});
于 2013-05-13T16:03:43.213 に答える