タグ

javascriptとtipsに関するheavenshellのブックマーク (9)

  • クロスドメインでのデータ読み込みを防止するJavaScript ? - snippets from shinichitomita’s journal

    GMailのコンタクトリスト漏洩のエントリのついでに。 JSONデータをscriptタグにのせて配信するサービス(JSONPなど)で、限られたサイトのみにしかそのデータを配信しないようにするためには、クライアントが送出してくるリファラ情報を使ってサービスコンシューマとなっているサイトを特定してアクセス制御する方法がある。 この方法はおそらく大部分のクライアント(ブラウザ)に対しては有効で、例えば実際にGoogle MapsなどもそれとAppKeyを組み合わせてサイトを判別しているっぽいのだけど、意図的にリファラ送出を切っているブラウザであったり、あるいはプロキシプログラムなどが自動的にリファラヘッダを除去してしまうようなクライアント環境に対しては無効になってしまう。 ということで、そんなクライアントでもなんとかならないだろうかと考えていたときにちょっと思いついた、もしかしたらこの方法なら許

    クロスドメインでのデータ読み込みを防止するJavaScript ? - snippets from shinichitomita’s journal
  • はてなブログ | 無料ブログを作成しよう

    【献血デビュー】体重が少し足りず400ml献血はできなくとも、献血ルームでの成分献血ならできたぞ、という話 いきさつ 2025年の抱負として「400ml献血をできるようになる」を掲げてから、冬を越し春が過ぎ夏が終わ………なかなか終わらないな……8月も終わろうとしている。記事を書いた頃の体重からは1kgぐらい増えたところだ。 夏バテなんてどこ吹く風とばかりに、ここ数週間は私の…

    はてなブログ | 無料ブログを作成しよう
  • はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記

    はじめに 「新はてなブックマーク」になったということで、とっても便利になったのですが、ブックマーク一覧ページ*1が若干 JavaScript に時間が掛かっているみたいです。 というわけで 調査してみたいと思います。調査して、改善できそうなところは後で纏めて「はてなアイデア」にでも登録しようと思います。 この日記は調査しながら、過程を書いていくつもりです。 準備 まずは、人のサイトの JavaScript を書き換えて試してみるための環境を作ります。 作業用ディレクトリを作る とりあえず、ホームに HatenaJS というディレクトリを作ります。 $ mkdir HatenaJS $ cd HatenaJS CocProxy をダウンロードしてくる 以下から CocProxy というツールをダウンロードしてきます。 http://coderepos.org/share/wiki/CocPr

    はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記
  • 選択文字列を翻訳したり地図検索したりするブックマークレットを作ってみました

    こんちわ。松田です。 つい最近、JavaScriptを使ってマウスカーソルの選択範囲の文字列を取得する方法を知りました。 これを使って遊んでたら楽しかったので、せっかくなのでブログのネタにしたいと思います。 参考URL:http://wiki.bit-hive.com/tomizoo/pg/JavaScript%20Range%A4%CE%BB%C8%A4%A4%CA%FD まずは選択範囲の文字列取得方法です。 ものすごーくはしょって説明すると、 // IEの場合 document.selection.createRange().text // Mozilla系の場合 window.getSelection() で取得できます。意外と簡単。 重要な部分をかなり省いたので詳しくは上記URLを参考にしてください。 そしてこれを利用していろいろ作ってみました。 マウスカーソルで文字列をドラッグし

    選択文字列を翻訳したり地図検索したりするブックマークレットを作ってみました
  • bookmarkletで選択文字列を取得することを考える - 徒書

    bookmarkletで、「選択文字列を取得して何かする」という処理はよくあるものですが(検索エンジンに渡したりとか)、そのことについて暫く考えを巡らせています。 ※ 以下のJavascriptソースはMozilla系ブラウザで動作させるものとします。 Firefoxで選択文字列を取得する場合は、以下のような方法が用いられます。 var t = window.getSelection().toString(); 多くの場合はこれで問題無いのですが、うまく行かない場合もあります。 まず、フレームが使われている場合。フレームの中のページは、大のページとは別のwindowオブジェクトなので、その中で選択文字列は上記の方法では取得できないことになります。何とかしようとするならば、window.framesにより子windowオブジェクトを取得し、それぞれのwindowオブジェクトについて再帰的に

  • 【ハウツー】Yahoo! UI LibraryでさくっとAjax! (1) Yahoo! UI Libraryを使ってユーザビリティアップ! (MYCOMジャーナル)

    「マルチプラットフォーム」「利用する際に必要なものは、デフォルトでインストールされているWebブラウザとネットワークに接続できる環境のみ」といったような利便性の高さから、見ない日はないと言っても過言ではないほど浸透したWebアプリケーション。今日もいたるところで、さまざまな業務を円滑にすすめるためにWebアプリケーションが利用されている。 Webアプリケーションはハイパーリンクやフォームなど、Webブラウザの基機能を用いて作成されている。Webブラウザ単体でできることは限られているため、ローカルアプリケーションと比較するとユーザビリティにが低くなりやすい。このため、デベロッパはWebブラウザ上で動作するJavaScriptやFlashをもちいて、そのユーザビリティを高めてきた。 ここではJavaScriptコードを記述するデベロッパの負担を軽減かつユーザビリティを簡単に高めることができる

    heavenshell
    heavenshell 2007/12/11
    YUI のまとめ
  • 【連載】いまからはじめるScript.aculo.us (1) 概要と基本的な演出効果 | エンタープライズ | マイコミジャーナル

    Script.aculo.usは、Thomas Fuchs氏を中心とするチームにより開発されているJavaScriptライブラリだ。MITライセンスが採用されており、2005年から公開を始め、執筆時点では11月に公開されたバージョン1.8が最新版になる。稿では、そのバージョン1.8を使って(連載継続中にバージョンアップした場合はそちらに変更する可能性がある)、同ライブラリの基を6回にわたって紹介しよう。 なお、Script.aculo.usを扱ううえでの必須知識となるPrototype.jsの使用法については、連載『いまからはじめるPrototype.js』で解説しているので、そちらをご覧いただきたい。 Script.aculo.usの概要 Script.aculo.usはPrototype.jsをベースに動作するライブラリだが、Prototype.jsが1つのファイルにすべての機能を

    heavenshell
    heavenshell 2007/12/11
    Script.aculo.us の連載
  • 【ハウツー】ゼロからはじめるThe Yahoo! UI Library - Calendar編 (1) 「The Yahoo! User Interface Library」とは? | パソコン | マイコミジャーナル

    Yahoo!が開発した「The Yahoo! User Interface Library」(以下、YUI)は、UI(ユーザーインタフェース)の機能を多く持つAjaxライブラリです。UI機能という点では他のAjaxライブラリとは比較にならないほど数が多く高機能です。 ただし、YUIだけで全てが済むことはありません。明らかに機能が不足している面もあるため、他のライブラリと組み合わせるか、独自に作成しなければならないこともあります。この点に留意すれば、UI部分の強化および補助という観点でYUIは非常に強力なライブラリとなります。 稿では、YUIの初期の頃から用意されているUIの1つ、カレンダー機能について説明します。このカレンダー機能はバージョンアップのたびに修正が加えられてきたため、少し古いバージョンで解説してあるページや書籍では役に立たないことがあります。ここではYUIの最新バージョン

    heavenshell
    heavenshell 2007/11/13
    Yahoo UI Library のカレンダーの使い方
  • IT戦記 - 一行で IE の JavaScript を高速化する方法

    以下の一行をすべての JavaScript の前に読み込む /*@cc_on _d=document;eval('var document=_d')@*/ この一行を読み込むことによって IE での document へのアクセスが 5 倍速くなります。 たとえば 以下のように、読み込む前と読み込んだ後を比較してみます。 // Before var date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date - date); // 643 /*@cc_on _d=document;eval('var document=_d')@*/ // After date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date -

    IT戦記 - 一行で IE の JavaScript を高速化する方法
    heavenshell
    heavenshell 2007/10/11
    JavaScript の高速化。
  • 1