タグ

javascriptに関するhotch_botchのブックマーク (67)

  • JQueryのソースコードを読んでJavaScriptを勉強! - ゆとRubyist日記

    最近JavaScriptをさわる機会が多く、もうちょっと勉強しないといけないなと思っています。なので、jQuery(1.7.1)のソースコードを読んでみました。 読んで思ったところをまとめてみたいと思います。勉強したことのまとめです。 jQueryの全体像 (function( window, undefined ){ // Use the correct document accordingly with window argument (sandbox) var document = window.document, navigator = window.navigator, location = window.location; var jQuery = (function() { // (省略) // jQuery の体のfunctionを作ってreturnする })(); //

    JQueryのソースコードを読んでJavaScriptを勉強! - ゆとRubyist日記
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • JavaScriptでJSONをeval - sshi.Continual

    JSON文字列をevalして値を取りたいときに挙動が妙ではまった、という話を聞いたので、Firefox1.5上のFireBugのコンソールで何パターンか試してみた。 {"key":"value"}というJSONデータが文字列で渡ってきて、それをevalしてJavaScriptの値として使いたい、という想定。 間違ったJSON文字列をevalした場合 >>> jsonstr = "{key:\"value\"}" "{key:"value"}" >>> var obj = eval(jsonstr) >>> obj "value" >>> typeof(obj) "string"JSONのオブジェクトでは、ラベルも""でくくって文字列にしないといけないのだが、まずはそれを忘れた場合を試してみた。結果として返ってくるのは、なんとJSONのハッシュの要素にしたつもりの文字列のみ。 正しいJSON

    JavaScriptでJSONをeval - sshi.Continual
  • iPhoneのタップ・回転イベントを JavaScriptで取得するサンプル - H2O Space. Blog - h2ospace - builder by ZDNet Japan

    iPhone特有の「タップ」や体の「回転」は、JavaScriptでも取得することができます。 つまり、Webサイト・Webアプリでこれらのイベントを捕まえてプログラムを作ることができるという訳。 簡単なサンプルを作ってみましたので、お試しください。 iPhoneのタップ・回転イベントをJavaScriptで取得するサンプル(iPhoneで確認してください) まずは、こんなHTMLを準備して・・ <dl class="iPhoneDL"> <dt>イベント</dt> <dd id="dEvent">なし</dd> <dt>X位置</dt> <dd id="dX">-</dd> <dt>Y位置</dt> <dd id="dY">-</dd> <dt>向き</dt> <dd id="dTurn">-</dd> </dl> プログラムは次の通り。 <script type="text/java

  • Firefox に outerHTML を実装する - IT戦記

    outerHTML について outerHTML とは Mozilla 系のブラウザ以外のすべてのブラウザで使える要素の HTML が文字列として取得できるプロパティです。 alert(document.body.outerHTML); // => body の HTML がすべて見える(例:<body><h1>It works!</h1></body>) というわけで 以下のコードを書いてみました。 if (!('outerHTML' in document.createElement('div'))) { HTMLElement.prototype.__defineGetter__('outerHTML', function() { return this.ownerDocument.createElement('div').appendChild(this.cloneNode(tru

    Firefox に outerHTML を実装する - IT戦記
  • setIntervalとsetTimeoutを調べた結果余分なことになった - 三等兵

    なかなかどうして、怠惰な若輩者につき不明な点が多々あるため先人の知恵をお借りしたく候。というわけでいろいろ知恵や知識などいただきます。・・・消化不良でしたorz setTimeoutの中の小難しいお話 自分だけじゃ到底調べられないし分かる術もない。Cなんて知るか。だのにこうしてなんとなくでも知ることができるのはありがたいことです。 http://labs.gmo.jp/blog/ku/2007/09/firefoxsettimeout.html Firefoxだけで少し古い記事だけど今でも同じようなものかな。他に私がわかるような資料もないのでこちらをベースに考えさせてもらいます。大きな変更はないだろうし。 タイマースレッド URL先読んだだけではイメージできなかった。整理のため箇条で要約。 Firefoxにはタイマー処理だけを管理している専用のスレッドがある(TimerThread) タイ

    setIntervalとsetTimeoutを調べた結果余分なことになった - 三等兵
  • 要素が画面上に見えているかどうかを調べる - by edvakf in hatena

    document.elementFromPoint という便利な関数を知ったので、今作っている Chrome 用 Migemo ページ内検索で使ってみた。 これが困ったことに、ブラウザごとにかなり挙動が違うのだけど、来の動作はこんな感じらしい。 待望の document.elementFromPoint が Firefox 3.0a8pre にて実装された。仕様は nsIDOMNSDocument.idl に詳しく書いてあるが、おおよそ以下の通りである。 HTML, XUL どちらの document に対しても使用可能 document の左上を (0, 0) とし、位置 (x, y) にある実際に見えている要素を取得する 同一の document 内に存在する要素のみ取得可能。例えばインナーフレーム内の document 内に存在する要素は取得できず、代わりに iframe 要素を返

    要素が画面上に見えているかどうかを調べる - by edvakf in hatena
  • JavaScript基本概念最速マスター - TechTalkManiacs

    プログラミング言語の文法をまとめた最速基礎文法マスターが流行っていますが、それだけだと物足りないので少し視点を変えてJavaScriptという言語の基礎となっている概念について簡単にまとめてみようと思います。(基礎文法についてはこちらを参照してください) (20010/2/4 記述ミス Typoなどを修正しました) JavaScriptの基概念 JavaScriptの基となる概念は次の二つです。 連鎖指向 全てがオブジェクト 連鎖指向はプロトタイプチェーンやクロージャ、全てがオブジェクトであるという性質は連想配列やプリミティブ型などの性質に関わってきます。 連鎖指向 JavaScriptでは変数、オブジェクト、メソッドなどのリソースの利用において鎖のようにリソースを定義や宣言できるポイントが連なり、一番近くの宣言や定義に基づいてリソースの内容が決定される、という仕組みが採用されています

    JavaScript基本概念最速マスター - TechTalkManiacs
  • amachang - JavaScript 入門

    プログラミングのこつ 無駄な名前を極力使わないこと。意味単位に名前空間を細かく階層的に分離すること。 ここで言う名前空間とは 名前空間とは、一つの名前が一意のものを表す空間。例えば、大きな目で見れば、日語は自然言語の名前空間である。また、専門用語なども名前空間と考えることが出来る。 日語 { コンニチワ = 挨拶 : : } 中国語 { ニーハオ = 挨拶 } 英語 { ハロー = 挨拶 } また、名前空間は重なり(優先順位)を持つ 同音異義語などの言葉は、それぞれの細かい名前空間の重なりによって一意のものに特定されると考えられる たとえば、「コイが好き」と言った場合 池に関する名前空間 { コイ = すいすいパクパク } チャライ話題に関する名前空間 { コイ = ドキドキきゅんきゅん } お茶に関する名前空間 { コイ = にがーい } 名前空間の優先順位を考えると、一意の意味を知

  • JavaScript初心者におくる24のグレイトなtips - 三等兵

    私が作ったわけではなく海外の記事です。自分も学習してみました。 phpスポーツ啓発日誌や、コカトリスさんや、アイスクレアームパラダイスさんのような、品質の良い訳は私にはできませんので見出しは意訳もしくは誤訳、文章は無視して訳してません。かつ、私がいろいろコードや文章つけたしてます。内容的にはほとんどズレてはないと思いますが、適当なのでおかしいところがあるかもしれません。 うっとうしい場合は原文をどうぞ。 24 JavaScript Best Practices for Beginners 1. 等価演算子で==使うなよボケ===だろナスチン野郎 ひぃぃぃ。 ==|!= だとねー、型は自動に変換されるんすよねー。ねー。 s = '1'; i = 1; alert(s == i); // true alert(s === i); //false えーと、==は「わし、数値も文字列も中身が一緒だ

    JavaScript初心者におくる24のグレイトなtips - 三等兵
  • 140文字以内でコナミコマンド - latest log

    <script>k="";document.onkeyup=function(e){k=/38384040373937396665/.test(k+=(e||event).keyCode)?(alert(573),""):k.length>99?"":k}</script>137文字

    140文字以内でコナミコマンド - latest log
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Extreme JavaScript Performance

    Talk given at http://jsconf.eu 2009. You serve up your code gzipped. Your caches are properly configured. Your data (and scripts) are loaded on-demand. That's awesome—so don't stop there. Runtime is another source of slowdowns, and you can learn to conquer those, too. Learn how to benchmark your code to isolate performance issues, and what to do when you find them. The techniques you'll learn rang

    Extreme JavaScript Performance
  • 使ってはいけないjQueryの機能 5個 : tech.kayac.com - KAYAC engineers' blog

    3 days ago的な時間表記をするサービスは全部嫌いです。agoです。 週末若手IT勉強会に参加させていただきjQuery 1.3.2のイベント周りを読んできたので、それを踏まえて使用すると問題の発生する可能性の高い機能を紹介します。 0 jQuery.browser 1.3からサポート外になりました。 代わりにjQuery.supportを使用しましょう。 ただ、swfの重ね合わせ問題等は単体のJSでは確認できないので、jQuery.browser無しでどう解決すればいいのかよくわかっていません。 1 getData、setDataイベント getData、setDataイベントは1.5系で削除される予定のようです 最新版のjQueryではgetData、setDataイベントが使用可能になっており、以下のようにイベントを設定できます。 $().bind('getData', fun

    使ってはいけないjQueryの機能 5個 : tech.kayac.com - KAYAC engineers' blog
  • Web ブラウザに表示されている画面を直接編集する方法

    これはすごい。Web ブラウザのアドレスバーに以下を入力し Enter すると、 今表示されている内容を直接編集できる。Firefox 3.0.14 と IE8 で出来 ることを確認した。 javascript:document.body.contentEditable='true'; document.designMode='on'; void 0 WEBブラウザーに表示されている画面を直接編集する方法 - sanonosa システム管理コラム集 追記(2009-10-04): 戻す方法はないものかなあ。‘false’ と ‘off’ では出来なかった。 追記(2009-10-17): 「戻す方法」というのは、「編集モードから閲覧モードに戻す方法」のこ とです。端折った書き方ですみませんでした。もう少し楽な方法が見つかっ たので、以下に追記します。 IE では、以下を入力し Enter

    Web ブラウザに表示されている画面を直接編集する方法
  • jQueryを読むために知っておきたい6つの知識 : tech.kayac.com - KAYAC engineers' blog

    夏休みはタイ古式マッサージセミナーに参加してきました。agoです。 先週日曜日若手IT勉強会に参加させていただき、jQueryのコードリーディングを行ってきました。 そこでjQueryのコードを読むときの基礎知識に関して簡単にまとめてみたいと思います。 1 変数の複数同時宣言と代入 まず、JSでは変数の宣言は以下のような形式で行います。 var hoge; この場合は単一の変数の宣言ですが、以下のような記述を行うと複数の変数を同時に宣言することが可能です。 var hoge, huga; また、変数宣言と同時に値の代入を行うことも可能で、その場合以下のような記述になります。 var hoge = 'test'; さらに複数の変数宣言と、値の代入は同時に行うことが可能で、その場合以下のような記述になります。 var hoge = 'test1', huga = 'test2'; jQuery

    jQueryを読むために知っておきたい6つの知識 : tech.kayac.com - KAYAC engineers' blog
  • CSS Browser Selector

    Clever technique to help you on CSS hacks. Last updated: November 02, 2010 (v0.4.0) CSS Browser Selector is a very small javascript with just one line which empower CSS selectors. It gives you the ability to write specific CSS code for each operating system and each browser. EXAMPLE The JavaScript support is disabled on your browser. Please, enable JavaScript and refresh this page. The color of th

  • 面白いだけで役に立たないUI - KAZUMiX memo

    できたよー javascript:(function(d,s){s=d.createElement('script');s.type='text/javascript';s.src='http://www.rr.iij4u.or.jp/~kazumix/d/javascript/unusable.js?'+(new Date).getTime();s.charset='UTF-8';d.body.appendChild(s);})(document) 上記のコードをアドレスバーに貼り付けて実行すると、そのページが上下左右繋がった空間になり、スクロールバーで扱えなくなります。代わりにマウスカーソルでグリグリ動かせます。 ソース unusable.js 関連エントリー(ネタスクリプト) ものすごい勢いで横スクロールさせるJavaScript - KAZUMiX memo HTMLの暴走 (me

    面白いだけで役に立たないUI - KAZUMiX memo
  • ワンクリックでコナミコマンドを実行するKonamiCommander (Kanasansoft Web Lab.)

    インターネットを見ていて、コナミコマンドの入力が必要になった時、いちいちマウスから手を離してキーボードから「上上下下左右左右BA」するのは面倒ですよね。パソコンを使っているのですから、単調な作業や繰り返しする入力は自動化したいものです。そこで、コナミコマンドを入力するBookmarkletを作成しました。 /* ================================================================================ Name : KonamiCommander Ver1.0.1 In : [none] Out : [none] Note : コナミコマンドを入力するBookmarkletです。 -----------------------------------------------------------------------

  • スペースアルク 検索結果のAutoPagerizeとaddDocumentFilter(addFilterとの比較) - os0x.blog

    < スペースアルクの検索結果はページ遷移のリンクがJavaScriptになっているため、XPathでどう頑張っても対応できないという話がAutoPagerize Wiki: siteinfo requestにあった。 それならと、AutoPagerizeにインクリメントモードとURLフィルターを追加するプラグインを書いてみた - 0xFFにアルク対応を入れてみました。 http://ss-o.net/userjs/test/autoincrementerplugin.user.js (Minibuffer、AutoPagerize、LDRizeそれぞれの最新版との組み合わせで動作確認しています) カスタムAutoPagerize - 0xFFをどうぞ。 今回はAutoPagerize.addDocumentFilterを使いました。 AutoPagerize.addDocumentFilt

    スペースアルク 検索結果のAutoPagerizeとaddDocumentFilter(addFilterとの比較) - os0x.blog