トップページ > ソフトウェア > 2011年04月03日 > YpfyLJug0

書き込み順位&時間帯一覧

3 位/1265 ID中時間01234567891011121314151617181920212223Total
書き込み数11000000000110001430100013



使用した名前一覧書き込んだスレッド一覧
名無しさん@お腹いっぱい。
Mozilla Firefox 拡張機能スレ Part57
Mozilla Firefox質問スレッド(初心者歓迎)の117
Mozilla Firefox Part153
Firefox userChrome.js greasemonkeyスクリプトスレ14
Firefox userChrome.js greasemonkeyスクリプトスレ15

書き込みレス一覧

Mozilla Firefox 拡張機能スレ Part57
310 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 00:25:15.13 ID:YpfyLJug0
>>308
chromeなコードでは window の指すもの自体が違うから全く動かない
詳しくはスクリプトスレで
Mozilla Firefox 拡張機能スレ Part57
311 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 01:16:11.48 ID:YpfyLJug0
>>309
まさかWindowsメニューを呼び出そうとしてる?それは無理
そうでないなら呼び出そうとしてる機能と書いたコードを添えてスクリプトスレへ
Mozilla Firefox質問スレッド(初心者歓迎)の117
84 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 11:12:50.92 ID:YpfyLJug0
>>83
browser.download.manager.showAlertOnComplete を false
Mozilla Firefox Part153
431 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 12:03:49.37 ID:YpfyLJug0
>>426
アドオン個別に自動更新オン/オフしてるのを全て既定(つまりその上のチェックの状態)にリセットする
英語版では「Reset All Add-ons to Update Automatically」

ちなみに上のチェックを外すと表記が「すべてのアドオンを手動で更新」に変わるけど
呼ばれるコマンドはどちらの場合も「cmd_resetAddonAutoUpdate」で共通
Firefox userChrome.js greasemonkeyスクリプトスレ14
986 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 16:01:45.58 ID:YpfyLJug0
>>981
chromeなコードからコンテンツにアクセスするには window の代わりに window.content を使う
但しこのオブジェクトはセキュリティ上の理由からXPCNativeWrapper(Fx4ではXrayWrapper)で
ラップされてるので幾つかの制限事項がある
https://developer.mozilla.org/ja/XPCNativeWrapper

制限によってフレーム名による直接アクセスができない(*)ので代わりに以下のように書く
const url = "http://www.google.co.jp";
var win = window.content;
win.frames[0].location.href = url;

どうしても名前でアクセスしたいなら以下のようにも書ける
win.document.getElementsByName('FRAME1')[0].contentWindow.location.href = url;

でもname属性を使うのは古い方法。id属性を定義して以下のように書くのがベター
win.document.getElementById('FRAME1').setAttribute("src", url);


(*) wrappedJSObjectでラップを剥がせば以下のようにも書けるけど非推奨
var win = window.content.wrappedJSObject;
win.FRAME1.location.href = url;
Firefox userChrome.js greasemonkeyスクリプトスレ14
991 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 17:32:41.21 ID:YpfyLJug0
>>978
でけた [1/3]

var OpenBMFolderInSidebar = {
  init: function(){
    eval('PlacesViewBase.prototype._onPopupShowing='+PlacesViewBase.prototype._onPopupShowing.toString().replace(
      'this._mayAddCommandsItems(popup);',
      '$&; OpenBMFolderInSidebar.onPopupShowing(popup);'
    ));
  },
  onPopupShowing: function(aPopup){
    if(aPopup._endOptOpenBMInSidebar) return;
    var menuitem = document.createElement("menuitem");
    menuitem.setAttribute("label", "Open In Sidebar");
    menuitem.setAttribute("oncommand", "OpenBMFolderInSidebar.openInSidebar(this.parentNode._placesNode, event)");
    aPopup.appendChild(menuitem);
    aPopup._endOptOpenBMInSidebar = menuitem;
  },
  // つづく
Firefox userChrome.js greasemonkeyスクリプトスレ14
992 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 17:37:46.75 ID:YpfyLJug0
[2/3]

  openInSidebar: function(aNode, aEvent){
    var targetNode = aNode;
    var sidebar = document.getElementById("sidebar");
    if(sidebar.currentURI.spec != "chrome://browser/content/bookmarks/bookmarksPanel.xul"){
      sidebar.addEventListener("load", function(){
        sidebar.removeEventListener("load", arguments.callee, true);
        window.setTimeout(function(){
          OpenBMFolderInSidebar.selectFolder(OpenBMFolderInSidebar.getBMTree(sidebar), targetNode);
        }, 100); //← 適当にウェイトを調整
      }, true);
      toggleSidebar("viewBookmarksSidebar");
    }else{
      OpenBMFolderInSidebar.selectFolder(OpenBMFolderInSidebar.getBMTree(sidebar), targetNode);
    }
  },
  // つづく
Firefox userChrome.js greasemonkeyスクリプトスレ14
993 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 17:39:02.02 ID:YpfyLJug0
[3/3]

  getBMTree: function(aSidebar){
    return aSidebar.contentDocument.getElementById("bookmarks-view");
  },
  selectFolder: function(aTree, aTargetNode){
    var view = aTree.view;
    aTree.selectItems([aTargetNode.itemId], true);
    var index = view.selection.currentIndex; if(index < 0) return;
    if(!view.isContainerOpen(index)) view.toggleOpenState(index);
    aTree.treeBoxObject.ensureRowIsVisible(index);
    aTree.focus();
  }
};
OpenBMFolderInSidebar.init();
Mozilla Firefox 拡張機能スレ Part57
320 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 17:57:04.30 ID:YpfyLJug0
>>318
Firefoxの中で作成したキーイベントを受け取ることができるのはあくまでもFirefoxの中だけ
Windows側にイベントを転送するDLLを自力で作成して組み込むというのなら話は別だけど
Windows用のジェスチャアプリを探した方がいいと思う
Firefox userChrome.js greasemonkeyスクリプトスレ14
996 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 18:03:23.64 ID:YpfyLJug0
>>995
setInterval で 1ms 毎に 縦サイズ÷5÷50 だけスクロールするようにすればいいんでないの
Firefox userChrome.js greasemonkeyスクリプトスレ14
997 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 18:08:00.35 ID:YpfyLJug0
言い忘れたけど>>991-993 はFirefox 4用。他の環境で動くかは試してない
(>>978 が動作環境を書いてなかったので)
Mozilla Firefox Part153
489 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 18:29:23.56 ID:YpfyLJug0
>>486
質問は質問スレに行った方がいい
Firefox userChrome.js greasemonkeyスクリプトスレ15
11 :名無しさん@お腹いっぱい。[sage]:2011/04/03(日) 20:11:31.35 ID:YpfyLJug0
>>7
そこは行数削減のために省略
必要なのは main だけ (手元のスクリプトローダでは省略時デフォルト)


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。