2015-12-01から1ヶ月間の記事一覧

chrome拡張で新規タブを開かせるには

manifest.jsonのpermissionsにtabsを追加 manifest.json "permissions": [ "tabs" ] chrome.tabs.create({url: 開きたいURL }); とても簡単閉じるのは... chrome.tabs.remove(tabId); だが、開いたtabのtabIdってどうやって取得するのか javascript - Google…

backbone.js や angularjs や vue.jsなど、クライアントサイトMVCでページ遷移時(routerでのhash変更)にイベントを取得したい

hashChangeイベントとpopStateイベントを監視 window.addEventListener('popstate',function(ev){ . . . },false); jquery mobile なら navigate イベントがある 参考 http://uhyohyo.net/javascript/12_3.html http://www.webcreativepark.net/jquerymobile…

javascriptでalertを置き換える。

単純にalertを再定義してあげれば上書きできるが、alertの場合(windowsオブジェクト)に属するメソッドの場合delete alertで元のネィティブなメソッドを戻すことができない。 ※ chromeの場合仕方ないので、元の関数はwindows.nativeAlert = window.alertみた…

javascriptでobjectから値の配列に変換する

オブジェクトから配列へ変換する方法がなかなか見つからなくて困った。javascriptでobjectから値の配列に変換するもので、keyが数字のものは多いがハッシュのものが意外と見つからなかったので困った。phpではハッシュは配列と一緒なのでarray_valuesで一発…

javascriptで置換したい組のハッシュでreplaceする

phpのstr_replaceだと簡単 たぶん、こんなかんじ '逆','小' => '大' ]; $str = str_replace(array_keys($replaces),array_values($replaces),$str); javascriptだと途端に面倒になる。 まるで呪文のようだ var str = "小回転", map = {"回":"逆", "小":"大"…

javascriptでDOMの変更を監視するには

WEBのゲームとかでDOMの変更を検出する方法 #elementでDOMが追加された場合にdoTaskを実行する $(function(){ // 対象ノードを選択 var target = document.querySelector('#element'); if(!target){ setTimeout(arguments.callee,1000); return false; } // …

chrome拡張でサイト側でのjavascript 実行

chrome拡張ではサイト側のJavascriptにはアクセスすることができないので、 bookmarkletにして流し込んだり、script要素をDOM操作で追加したりして流し込むまた、サイト側のスクリプトからchrome拡張にイベントなどを戻すことができないので、その場合はカス…

backbone.js や angularjs や vue.jsなど、クライアントサイトMVCでhttp リクエスト時にイベントを取得したい

通常のWEBサイトであればhttp通信は1回だけなのでonloadで大丈夫ですが、 backbone.js や angularjs や vue.jsなど、クライアントサイトMVCでは非同期でhttp通信が走る為、 例えばクライアントサイトだけで、セッションのタイムアウトなどを検知するのが難し…

javascriptで特定ユーザーの最新ツイートを 認証なしで取得する

現在 twitter APIはoauh認証が必須となり、APIの認証キーの取得にはデベロッパーの登録が必須となっている。 ....が簡単に最新のツイートを取ってきたいので、javascriptでスクレイピングしてくることにする。javascriptでスクレイピングする場合、AJAX XMLH…

chrome拡張でコンテクストメニューを表示する

background.jsにコードを記述して終了 参考 http://dev.classmethod.jp/ria/google-chrome-extension-7/

javascriptでsetIntervalの最初の1回はまたずにすぐに実行したい時

参考URLはちょっとスマートじゃないので修正 匿名関数にする必要はないので function notify(){ // ... } notify(); setInterval(notify,60*1000); 匿名関数化するなら var notify = function(){ // ... } notify(); setInterval(notify,60*1000); いずれも…

chrome拡張の開発で設定データを保存する

chrome拡張でデータを保存する方法としては2つあり html5のlocatStorageを使う方法とchrome extentionのAPIであるchrome.storageを使う方法がある。html5のlocatStorageを使う方法は、普通にlocalStorageを使うだけなので簡単だが、サイトで使用している場合…

javascriptでY/m/d H:i:sを表示

javascriptで現在の日付・時刻をY/m/d H:i:s形式で表示するphpだと関数1つで終わりだが、javascriptだと以外とめんどくさい。 かつ、ぐぐって出てくるサンプルが0埋めされてなかったりと、完全じゃないので、備忘録としてここにメモしておく。javascriptだと…

ホスト名からIPアドレスを見つける方法

ホスト名からIPアドレスを見つける方法 いつもわすれるので、備忘録として nbtstat -R nbtstat -a lan_disk nbtstat -c