JavaScript

スマートフォンで操作する event について

パソコンでは正常に動いているのに、スマートフォンでは操作のイベントを正しく認識していないように思えたので、調べた。 その結果、 if (isSmartPhoneDevice()) { // スマートフォンでは、PC の clikc イベントは tap になる $('a').tap(function() { ... …

自作 Web API でデータを JSONP で返す場合

GET メソッドや POST メソッドで callback 関数をサーバー側で引き取り、JSON を引数に受け取る関数名を出力する必要があることがわかった。 自分でやってみないとわからないことばかりだ。 http://www.example.com/webapi?id=1&callback=mycallback という …

Access-Control-Allow-Origin と Access-Control-Allow-Headers について

Slim3 で JSON を受け取るために、久しぶりに Ajax のデータを受け取る処理を記述していたら、(Chrome 上で)下記のエラーが発生した。 XMLHttpRequest cannot load http://localhost:8888/api/json/... Origin http://localhost is not allowed by Access-Co…

jQuery と JSONP と $.ajax() と無名関数

JavaScript のコードをほとんど書いたことがなく、jQuery も JSONP も初めてだったので、戸惑うことが多かった。 Bing で callback で利用する関数を指定するパラメーター名は JsonCallback Bing のように callback 関数を明示的に指定する必要がある場合は…

jQuery と JSONP で Bing の画像検索を利用してみる

Bing のレスポンスで「invalid label」というエラーが発生した原因 Bing のレスポンスで「invalid label」というエラーが発生した原因は、Bing で JSONP として処理をするには、「JsonType」と「JsonCallback」をリクエスト時に設定していなかったことが原因…

Bing のレスポンスで「invalid label」というエラーが発生する

原因 JSON のキーと文字列の値はすべて「"」で囲むことが求められている。しかし、Bing のレスポンスで数値は、「"」で囲まれていないのが、原因となっている。例えば、検索結果数としての値が「"」で囲まれていない。 {"SearchResponse":{"Version":"2.2","…

JSON の文字列について

JSON の文字列は「RFC 4627 The application/json Media Type for JavaScript Object Notation (JSON)」に規定されている。 文字列は、 文字列は C 言語で使われる方法と同様に、前後をダブルクォーテーションでくくって表わす。全ての Unicode 文字列はダブ…

dataTables でカンマで桁区切りをした数値をソート可能にする

<script type="text/javascript">

dataTables のソート機能について

dataTables はデータを JavaScript 内に記述することによって、ソートが可能になっている。 上記に記述はしたが、Internet Explorer 6.x でも動作することを確認した。 サンプルコードは上記のページにも記述されているが、いつなくなるかもわからないので記…

Flexgrid のソート機能について

ソート機能が有効になるには HTMLファイルに静的に書き込む場合、ソート機能は利用できない。 ソートは「Ajaxを通じて、ソートされたデータをクライアントに渡す」ことで実現している。 JSON もしくは XML 形式でデータをクライアントに渡す必要がある。 各…

Flexgrid の新しい公式ページ

久しぶりに jQuery の Flexgrid を利用しようと思ったら、公式サイトがドメインの有効期間で失効になっていた。 http://webplicity.net/flexigrid/ これは困ったと思っていたら、新しい公式ページをやっと見つけた。 Flexigrid - Web 2.0 Javscript Grid for…

冗長的なコードを修正してみる

「1ページに 複数の id に UI Tabs を適用し、かつ Cookie でクリックしたタブを管理する」のコードは冗長なことはわかっていたので、修正をした。 <script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/jquery.ui.core.1.6rc2.min.js"></script> …

1ページに 複数の id に UI Tabs を適用し、かつ Cookie でクリックしたタブを管理する

<script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/jquery.ui.core.1.6rc2.min.js"></script> <script type="text/javascript" src="/js/jquery.ui.tabs.1.6rc2.min.js"></script> <…

UI Tabs で初期に選択されるタブを設定し、次回以降はクリックされたタブを選択表示させる

やりたいこと 初めて訪問したユーザーに初期設定で選択したタブを表示する 移動後にタブを表示するページに戻った場合は、最後にクリックしたタブを選択した状態で表示させる <script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/jquery.ui.core.1.6rc2.min.js">

UI Tabs で選択したタブを Cookie に記録する

タブを選択してから別のページへ移動した後に、タブがあるページへ戻った場合に、選択したタブの内容が表示されているようにする。 もっとも簡単な記述方法 <script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/ui.core.js"></script>