タグ

JavaScriptとtipsに関するgakkiyのブックマーク (13)

  • 実質1行でメールフォームのSPAMを防ぐjQueryスクリプト

    3月に フリー写真素材 :: Free.Stocker という無料写真素材サイトをオープンし、このサイトのサイドバーに クックパッド みたいに気軽にメッセージを送れるフォームを設置しました。 しばらくは何事も無かったのですが、ある日突然大量のSPAMメッセージが送られてくるように…(●´⌓`●) 酷い時には3分〜5分に1通送られてくるし、試しに送り元のIPアドレスホストを調べてみたら毎回バラバラなので困りました。 こんな時、多くのサイトでは CAPTCHA と呼ばれる読みづらい英数字の羅列の画像を入力させることが多いと思いますが、それでは「気軽にメッセージを送れるフォーム」とは言いづらいですし、サーバーにもページを表示させるたびに毎回余計な負担がかかってしまいます。 試しにWordPressのSPAM防止などに広く使われている Akismet というSPAM防止APIをメール送信スクリプ

    実質1行でメールフォームのSPAMを防ぐjQueryスクリプト
    gakkiy
    gakkiy 2011/09/27
    jsで生成。なるほどね。
  • JavaScriptコーディング等を書く上でのパフォーマンス確認事項30:phpspot開発日誌

    30 best practices to boost your web application performance - Web User Interface Architect JavaScriptコーディング等を書く上でのパフォーマンス確認事項30。 自分へのインプット&メモがてらにちょっとまとめてみます。 JavaScript DOMの操作は可能な限りやめる eval, new Function() は遅いので可能な限り使わない withステートメントを使わない(使った事ないですが) for-in 文ではなく for 文を使う。 ループの中で try-catch ではなく、try-catchの中にループを置く グローバル変数をなるべく使わない aaa+='AAA';aaa+='BBB'; の方が aaa+='AAA'+'BBB';より速い 複数の文字列連結には、Array で文字列

  • 502 Bad Gateway

    502 Bad Gateway nginx

  • 前の記事は間違っていました。申し訳ありません。という訳で、改めて別の IE のオブジェクト配列のソート高速化。 - IT戦記

    でも、基準値が整数 & 65536 以下の場合限定です>< しょぼいですね>< 以下のようにプロパティ値で並び替えたいとする。 var Klass = function(order) { this.order = order }; var array = [new Klass(3), new Klass(1), ....]; array.sort(function(a, b) { return a.order - b.order }); こうすると、 10 倍近く速くなる var Klass = function(order) { this.order = order; var _order = String.fromCharCode(order); // ここを追加 this.toString = function() { return _order }; // ここを追加 }; var

    前の記事は間違っていました。申し訳ありません。という訳で、改めて別の IE のオブジェクト配列のソート高速化。 - IT戦記
  • 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 を高速化する方法
  • IT戦記 - JavaScript の this について

    WEB+DB PRESS 編集の R たんから、僕の連載記事に読者様から質問が来ていると教えていただいたので、その内容を教えていただきました。 以下、内容を転載 「JavaScriptわくわく開発道」の記事に関して質問です。 今回の内容で特に興味を持ったのはthisキーワードの振る舞いでした。 thisキーワードの説明には、オブジェクト型の変数を別の変数にコピーしてから初期化すると、コピーした変数からメソッドを実行できなくなるという例が紹介されていました。 そこには「(1)の時点でobj0には{}が入っているため、hogeは未定義となってしまう」という説明があるのですが、誌面の都合上省略があるためか、thisキーワードを用いることで問題を回避できるという理由がなかなか理解できないでいます。 自分なりに考えてみたところ、内部的には以下のようなことが起きているのではないかと思いました。 (1)

    IT戦記 - JavaScript の this について
  • ハタさんのブログ : Javascriptによる大規模開発の覚え書き。高速化編

    前回書いた「Javascriptによる大規模開発の覚え書き」が凄いことになってました。 今回は、省略した「5.高速化せよ」について書きます。 僕にとってjavascriptは非常に高速な言語です。それは何が高速か 開発速度が高速である 開発速度、及びそこに至るまでの修得速度はとても高速です。動的言語を上手く操る開発者はもちろん、開発に不慣れな(言葉が悪いけど)新人達でさえ「動く」モノをサクっと作ってしまえる。 また、プラットフォーム(? というかブラウザ)が広く普及しているので、ググればスグに問題解決もできる。 それにローカルで簡単に作れる。javascript、それは動作環境を含めて高速です。 高速にUI操作ができる(UI操作が非常に簡単である) swingとかでUI操作をするには多くのオブジェクト操作をしなければならないけど、javascript(もといDHTML)は非常に簡単に

  • ハタさんのブログ : Javascriptによる大規模開発の覚え書き

    未だに半年前のエントリにブクマされるみたいなので、もう少しjavascriptについて書いてみる。 今回は大規模化開発におけるJavascriptの注意点とかそういうの。当てはまらない環境の方もいます。(しかも基的な事だらけで大したことは書いてないです) ほぼリッチクライアントを主目的としたjavascripterとコードを対象とします。 どちらかというと、ライブラリを提供する側の視点から 1.ログを出力せよ あなたが書いたコードは遅い、と必ず言われます。なので言われる前から、自分の書いたコードの処理時間をログするようにしましょう。 次のような処理時間を計測するロガーを作ります。 var TraceLog = function (){ this.startTime = -1; var outer = document.getElementById('_outer'); if(oute

  • テーブルにExcelのようなスクロール機能を付加する その2

    手、上げすぎですから!右に行ったり、左に行ったり、手をふったり、アクションが大きすぎですから!ついでに声も大きいですから(笑) すみませんすみません、実は日付見ないで申し込んでました<(__)>。資料の印刷できてない上に、明日絶対起きられない自信がありますorz。実は最近肉体労働(?)をしているので、仕事が無いと認識してしまっている明日は気が緩んで起きる事できない率が非常に高いです。 もし13時に現地に居なかったら間違いなくまだ寝ています(ぇ)。 これは神!!神作画!!うわ〜ちょっと涙出た!!最後までこれでお願いします!このテンポもすごい。うわーうわーがお。 とりあえず力尽き ミ(o_ _)o 今日はおはようございますレベルではなく、こんにちはレベルでした。一応こんばんはレベルじゃなかったんですけど、やはり朝という時間に目覚める事はできませんでした(がくー) id:makotanへ。コメン

    テーブルにExcelのようなスクロール機能を付加する その2
  • 『HTML縦書き閲覧CGI Vertica ver. 1.06』

    HTML縦書き閲覧CGI Verticaこのページは、URLが選択されていないときに表示されます。 Web の小説縦書きで楽しみましょう。 [ 別の小説を読む ] [ 使い方(読み方) ]http://chronoflyer.ddo.jp/vertica/default.txtを表示中です。 おやすみ、スカイウォーカー  彼女の名前はスカイウォーカー。彼女の仕事がスカイウォーカーだからだ。今日も一日が終わり、いつものように彼女がここにやってきた。僕は彼女のが石畳の上の水たまりに小さな波紋を作ったのを確認してから言った。 「こんにちは、スカイウォーカー。元気かい?」 「こんにちは、ゲートキーパー。今日は落ちてるわ」彼女は彼女の後ろに広がる雲を振り返ると言った。 「ほら、あれを見てよ。手を伸ばしたら届きそうなくらい低いわ」  水をたっぷり含んで湿った色をした雲が暗い光を地上に投げかけていた

  • MOONGIFT: » フォームを多機能化「wForms」:オープンソースを毎日紹介

    ※ スクリーンショットは全て公式サイトデモより。 最近はJavaScriptで入力チェックを行うサイトも増えてきた。もちろん、サーバサイドでのチェックを欠かすことはできないが、クライアントサイトでチェックできると、その場ですぐに入力訂正が促せるのでユーザビリティが高い。 各入力チェックはもちろん、入力フォームをさらに便利にしてくれるライブラリがこれだ。 今回紹介するオープンソース・ソフトウェアはwForms、JavaScriptフォームライブラリだ。 wFormsではJavaScriptによる入力チェックをはじめとする各種ライブラリが提供される。入力の際にヒントを表示するもの、フォーカスが外れた時にその場でチェックを行うもの、ウィザード形式に入力を促すものもある。 また、複数回一気に入力する事ができるようにする動的フォーム等、便利なライブラリもある。各スクリプトは個別に分かれているので、必

    MOONGIFT: » フォームを多機能化「wForms」:オープンソースを毎日紹介
  • http://blog.tofu-kun.org/070627210315.php

  • Array.merge - JavaScriptで2つの配列をマージ処理 - youmos

    This domain may be for sale!

  • 1