[jQuery] 外部サイトへのリンクを別ウィンドウで開く方法
- 2011 11/27
「Jenkinsではじめるビルド職人入門」が11月中は無料でダウンロードできるみたいです。
・DL:Jenkinsではじめるビルド職人入門 | Gihyo Digital Publishing
日本初のJenkins解説書『Jenkins実践入門 ~ビルド・テスト・デプロイを自動化する技術』の発売記念として無料キャンペーンをしているらしいので、これを機にJenkinsデビューしたいものですね。
jQueryで、グルーポン系サイトでよく見掛けるカウントダウンタイマーを実装しようと、プラグインを探していたのですが、百式さんのライフハックにプラグイン無しでも簡単に実装できそうだったので、一部書き換えてご紹介します。
・元ネタ:グルーポン系サイトでよく見られる「終了まで○時間○分○秒」をjQueryで実装してみる | IDEA*IDEA
■ 元のコード
<script type="text/javascript"> $(function() { countDown(); }); function countDown() { var target = new Date("August 26,2010 11:00:00"); var today = new Date(); var h = Math.floor(((target-today)%(24*60*60*1000))/(60*60*1000)) var m = Math.floor(((target-today)%(24*60*60*1000))/(60*1000))%60 var s = Math.floor(((target-today)%(24*60*60*1000))/1000)%60%60 $("#TimeLeft").text(h+'時間'+m+'分'+s+'秒'); setTimeout('countDown()', 1000); } </script> |
■ カスタマイズ(日/時/分/秒 表記)
<script type="text/javascript"> $(function() { countDown(); }); function countDown() { var startDateTime = new Date(); var endDateTime = new Date("November 26,2011 11:00:00"); var d = Math.floor((endDateTime-startDateTime)/(24*60*60*1000)) var h = Math.floor(((endDateTime-startDateTime)%(24*60*60*1000))/(60*60*1000)) var m = Math.floor(((endDateTime-startDateTime)%(24*60*60*1000))/(60*1000))%60 var s = Math.floor(((endDateTime-startDateTime)%(24*60*60*1000))/1000)%60%60 $("#TimeLeft").text(d+'日'+h+'時間'+m+'分'+s+'秒'); setTimeout('countDown()', 1000); } </script> |
以上です。
■ カウントダウンタイマーを実装する方法の紹介記事
その他、JavaScript/jQuery で、カウントダウンタイマーの実装について書いてある記事。
・jQuery Countdown を使ってカウントダウンタイマーを表示する | バシャログ。
・jQueryで時間をカウントダウンするJavaScript「jCountr」|skuare.net
Ruby on Rails 3.1 にて、AbstractController::DoubleRenderError というエラーが発生しました。
■ エラー内容
Render and/or redirect were called multiple times in this action. Please note that you may only call render OR redirect, and at most once per action. Also note that neither redirect nor render terminate execution of the action, so if you want to exit an action after redirecting, you need to do something like “redirect_to(…) and return”.
下記のように、複数 render 処理が実行させるとエラーになります。
render :index render :show # ここまで処理されて render 重複エラー |
render処理の後に、そこで動作を終了させたい場合は return を書かなければいけません。
render :index and return # ここで処理が終了 render :show # ここは処理されない |
以上です。
【参考】
・ruby on rails – AbstractController::DoubleRenderError that shouldn’t be – Stack Overflow
Railsにて、タイムゾーンを 世界協定時(UTC)から日本標準時(JST)に設定する方法を調べたのでメモ。
■ config/environments/production.rb
# time zone config.time_zone = 'Tokyo' |
先日Twitterで「Rails使いはこの記事ぐらいは読んでおいた方が良いんじゃないかな」というツイートを見掛けたので、該当の記事「Ruby on Rails作者 David Heinemeier Hansson へのインタビュー記事 – 小飼弾のアルファギークに逢いたい」を読みました。
■ 小飼弾のアルファギークに逢いたい♥:#2
・Ruby on Rails作者 David Heinemeier Hansson(前編) RubyでRailsを書いたわけ|gihyo.jp … 技術評論社
・Ruby on Rails作者 David Heinemeier Hansson(中編) 37signalsってどんな会社?|gihyo.jp … 技術評論社
・Ruby on Rails作者 David Heinemeier Hansson(後編) 「アーキテクト」って言葉を使ったら負け|gihyo.jp … 技術評論社
書籍「小さなチーム、大きな仕事」を一年ぐらい前に読んでるのですが、働き始めてから読むとまた違った見方ができそうなので、近々、読み返そうと思います。
ソニックガーデン代表取締役社 倉貫義人氏の講演「プログラマを一生の仕事にできるビジネスモデルで目指す未来のビジョン」が素敵なのでご紹介します。
プログラマを一生の仕事にできるビジネスモデルで目指す未来のビジョン
Facebookアプリ(Tab App)を作るとき役立つHTML/CSSフレームワーク「520 Grid System」が便利なのでご紹介します。
・公式:520 Grid System – HTML/CSS Framework made for Facebook Page Developers
・参考:Facebookのページを作る際に便利そうなHTML/CSSフレームワーク「520 Grid System」:phpspot開発日誌
520 Grid System は「ページの幅が520px」に設定されており、グリッドデザインもできるのでかなり使いやすいのでオススメです!
他にもCanvasアプリ用として「760-grid-system」というフレームワークがあるみたいです。
・jimeh/760-grid-system – GitHub
760-grid-system は有名なフレームワーク「960 Grid System」のマッシュアップらしく、Canvasアプリを作るときは役立ちそうですね。