Google Chromium Extensions開発の課題

私のメインのブラウザーはOperaで、アドオンは元々開発され、その後Google Chromium(Ubuntuリポジトリーからのアセンブリー)に転送されました。 私はtwitterのWebバージョンを使用しており、ほぼ完全に私に合っていますが、いくつかのマイナーなニュアンスを修正することが決定されました。 さらに、 "porting" extension'aでどのような問題が発生したかを知ることができます。







まず、CTRL + ENTERでステータスを送信したいと思います。 第二に、古いリツイートスタイル(RT user_nameテキスト)。



var pr_key = 0;

function submit_status(event) {

alert('');

}

(function () {

try {

submit_status = function (event) {

if(pr_key == 17 && event.keyCode == 13) {

$('#status_update_form').submit();

}

pr_key = event.keyCode;

}

jQuery('#status').attr('onKeyDown', 'submit_status(event);');

} catch(e) { }

})();








1つ目は、JSを使用して非常に迅速に実装されました。 私はサードパーティのライブラリを使いたくなかったので、小さな松葉杖で行われました。 すべてがOperaで機能し、Chromiumの拡張機能を構築するときがきました。 manifest.jsonにjQueryが追加され、twi JS自体もテストを開始しました。 関数定義領域の可視性に関するChromiumの問題で判明したように、すぐにすべての問題が表面化し、onKeyDownにはsubmit_status()関数が表示されませんでした。 この問題は、twitterコードにスクリプト要素を追加することで解決しました。



// ==UserScript==

// @include twitter.com*

// @include www.twitter.com*

// ==/UserScript==



(function () {



jQuery('#home').append(

'');



jQuery('#status').attr('onKeyDown', 'submit_status(event);');



})();









上記は、OperaとChromiumの最終的なスクリプトの完全なリストです。 もう1点注意したい:



'setTimeout("update_retweet();", 5000);' +









update_retweetの呼び出しに使用されます。 拡張機能から呼び出すこともできません。



(?!some code.google.com)リソースのスクリプトにsrcを指定する別のオプションもありますが、これもオプションですが、私にはうまくいきませんでした。



All Articles