タグ

querySelectorAllとbookmarkletに関するishideoのブックマーク (3)

  • document.querySelectorAllでmapやfilterを使う方法 - Qiita

    document.querySelectorAll(selectors) を Array.prototype.slice.call() ([].slice.call()) の中に入れると、配列で使える map や filter といったメソッドが使えるようになるようです。 サンプル 例として、Qiitaの人気の投稿Beta にある記事のタイトルをコンマ区切りでアラート表示するブックマークレットを作ってみました。 以下のコードをQiitaの人気の投稿Betaを開いている状態でブラウザ上のアドレスバーに貼り付け(貼り付け時に先頭の javascript: が消える場合は javascript: を追記してください)してからEnterキーを押すと実行できます。 ES2015の記法(アロー関数等)は用いていないので、Internet Explorer 11でも動作します。 [].slice.cal

    document.querySelectorAllでmapやfilterを使う方法 - Qiita
  • querySelectorAllしてmapしたいとき[...すると短い - hitode909の日記

    表示中のHTMLから情報を雑に抜き出して利用するため,ブラウザのデベロッパツールなどでquerySelectorAllしてmapしたい.しかし,querySelectorAllはNodeListを返すので,mapするにはArrayに変換する必要がある. NodeListをArrayに変換するときに短く書く方法ないですかって同僚に聞いたらいろいろ教えてもらえたのでメモ. Array.prototype.slice.callする オーソドックスな手法.昔からこれを書いていて,長くて困っていた.最近はアロー関数を使えるのでちょっと短くなったけど長い. Array.prototype.slice.call(document.querySelectorAll('a')).map(a => a.href) [].slice.callする Array.prototypeのかわりに[]で書く.ちょっと短い

    querySelectorAllしてmapしたいとき[...すると短い - hitode909の日記
  • ブックマークレットに関して - notebook

    今までブックマークレット?ふーんみたいな感じだったのですが、最近フロント側もやっていて面白くなってきているのと、結構できることあるみたいなのでtipsとして残しておきます 画面での確認 いきなりブックマークレットのコードを書く前にまずは画面でdeveloper consoleを開いて1コマンドづつ操作したりします ここで出来上がった操作の流れをコードに落とし込んでいくと効率よさそうな感じですね そこで使えそうなtipsたちを紹介していきます querySelector API セレクタはCSSセレクタなのでxpathとちょっと違うがまぁ少し調べれば思い出せる範囲だと思います classname というクラスを適用されたdiv要素を集める document.selectorAll('div.classname') document.querySelectorAllで取得したエレメントたちに対

    ブックマークレットに関して - notebook
  • 1