インストール時に popup.html ウィンドウで API キーを要求する Chrome 拡張機能を作成しています。ユーザーが API キーを入力して保存すると、次に拡張機能のアイコンがクリックされたときにフォームが非表示になり、フォームの下のコンテンツのみが表示されます。
popup.htmlのフォームは次のようになります。
<form action="" class="apikey" id="api">
<input type="text" id="apikey" placeholder="Please enter your API key ...">
<button type="submit" id="saveKey" form="api">Save</button>
<a class="hint" href="#">Where can I generate my API key?</a>
</form>
以下は、フォームを非表示にするためのpopup.jsコードです。
$(document).ready(function() {
$('#saveKey').click(function(event) {
event.preventDefault();
$('#api').hide();
});
});
また、API キーを保存する関数もpopup.jsにあります。
function saveKey() {
// Get a value saved in an input
var apiKey = $("#apikey").val();
// Check that the key has been entered
if (!apiKey) {
console.log('Error: No value specified');
return;
}
// Save it using the Chrome extension storage API
chrome.storage.sync.set({'value': apiKey}, function() {
// Notify that we saved
console.log('Your API key was saved.');
});
}
#api
フォームの非表示は処理されました。現在、フォームの非表示は Save をクリックした後にのみ機能するため、次に拡張アイコンがクリックされたときにフォームが表示されないようにする必要がありますbutton
。