サイトにはヘッダーやフッター、ナビゲーション部分など全ページに共通して入る要素があります。 この部分を修正する時はHTMLを全ページ修正するととても手間がかかって大変です。自分のサイトはだいたいCMSで管理しているのでテンプレートを直せばあっと言う間なのですが、それ以外の場合の共通部分を簡単に治す方法を改めて調べてみました。 がんばって直に書いてるものを置換する Dreamweaverのテンプレート機能を使う JavaScriptを使う PHPを使う SSIを使う Node.jsやRubyのツールを使う がんばって直に書いてるものを置換する とりあえず普通にコーディングして、修正などある場合はソフトの一斉置換を使ってなんとかする方法です。 数ページものならあまり気にならないがページが増えていく毎に大変になる。リンクや画像が相対パス指定だと階層が増えると更に大変になります。 <footer>
iOS6出た! iOS6が出来ましたね。社内ではiPhone5を入手した社員がLTEの速度に驚いていました。私はまだiPhone4Sですが、iOS6にして新しい機能を楽しんでいるところです。さて、iOS6にしてSafariの仕様が変わって困ったと言った投稿が海外のフォーラムで挙っています。それも、基本的なPOST通信についてです。これは困ったということで、動作を確認して対策方法についてシェアしたいと思います。 どんな時にPOSTをキャッシュする? まずはどんな状況か確認してみたいと思います。 Cache-ControlもExpiresも無い場合 : iOS6 Mobile SafariはPOSTをキャッシュする Cache-Control max-age=0指定 と Expires指定 : iOS6 Mobile SafariはPOSTをキャッシュする Cache-Control: no-
口上 historyとAjaxといえば、JavaScriptからある程度任意でhistoryのエントリをpushできるhistory.pushStateとか、history.replaceStateは既に大分有名になった感がある。 素晴らしい未来では、全てのブラウザにpushStateが乗っていて「location.hashを使ったAjax遷移が許されるのは10年前のブラウザまでだよねー」というハッピーな世界が実現するのだろう。が、今現在ではまだpushStateに対応していないブラウザのシェアも多く、Ajaxによる擬似画面遷移をモリモリ行うようなサイトではpushStateのある環境、ない環境の両方を考慮してやる必要がある。 (ちなみに、要件によっては「pushStateがないブラウザは通常の遷移で我慢しろ!」という割り切りも全然ありだと思う) 先に言っておくと、この記事は長いです。 環
How to Use jQuery’s ajax() Function for Asynchronous HTTP Requests
Ajaxを使うためにはページ内リンク (hash fragment=URLの#以降) を使うのが一般的*1 hash fragmentはサーバに送信されないから、JavaScript非対応のブラウザだと動作しない 特にサーチエンジンのクローラ等で問題になる*2 そこで Google は、#! が含まれる URL を hash を含まないものに読み替える仕組みを提唱している。例えば「www.example.com/ajax.html#!key=value」のサーチエンジン用URLは「www.example.com/ajax.html?_escaped_fragment_=key=value」になる。 TwitterやFacebookはこの仕様に従うことで、Ajax な UI と SEO を同時に実現している、というわけ。ということを調べたなう。 参照: Getting Started |
2010年08月17日06:45 カテゴリLightweight Languages Ajax - Goodbye, JSONP. Hello, Access-Control-Allow-Origin もうそろそろJSONPとはお別れできるのではないかと思い立ったので。 XMLHttpRequestとその問題 AjaxといえばXHRの愛称で親しまれているXMLHttpRequestですが、これには一つ重大な欠点がありました。 これを発行するDHTMLページのドメインが、Request先のドメインと一致する必要があったのです。いわゆる Same Origin Policy というやつです。おかげでサイトをまたがって使えなかったのです。これではマッシュアップできない。どうしよう。 JSONPとその問題 そこで生まれたのが、JSONPという手法です。 これは、scriptノードを追加した時に、単
「twitterに投稿」みたいなボタンをクリックしたときにblt.lyとかのAPIで短縮URLを作って、window.openで別ウィンドウでtwitterを開きたい場合に、bit.lyのAPIを呼ぶJSONPが非同期処理になるので、ほとんどのブラウザでポップアップブロックに引っかかってしまいます。 以前、これ困ったねーって@sugyanと話してたんですけど、@taku_eofにその話しして、色々方法考えてたらよさげなのがでたんでやってみました。 まず、これはポップアップブロックされます。 $('#hoge').click(function() { $.ajax({ type: "GET", dataType: 'jsonp', url: "http://api.bit.ly/shorten", data: {...}, success: function(data) { ... wind
Ajax開発支援ツールをまとめておきます。 ・コーディング支援ツール aptana eclipseのプラグインの、JavaScript,CSS,HTML,XMLエディタ。 コード補完機能、JavaScriptのオブジェクト指向、JavaScriptのクラスの階層表示もサポート。 JSEclipse Adobe提供のecliseプラグイン。インストール方法はこちらを参照。 コード補完機能がある他、オープンソースのライブラリもいくつかサポート。 Googlipse Google Web Tookit用のeclipseプラグイン。 JSDoc JavaScriptでJavaのJavaDocと同様のものを作成可能。 ・ブラウザツール FireFox FireBug FireFoxのアドオンツール。JavaScriptの文法チェック・デバッグ・CSSの文法チェックなど高度な機能を提供。 使い方は、下
JavaScriptやActionScriptで外部のXMLを読み込む場合などにクロスドメインの制約で読み込めない場合があります。 Flashの場合は外部サイトにcrossdomain.xmlを設置してもらったりする、JavaScriptの場合はJSONPを使用するなど対応方法はありますが、全ての案件に対応可能なわけではないと思います。 そんな外部との連携でどうしようもできない時に使用したいのが今回ご紹介するSimple PHP Proxyです。 これは外部サイトのデータをPHPで取得する事によって、自ドメイン内でデータを表示する事ができるproxyシステムです。 外部サイトにアクセスする際には以下のオプションを指定できるようです。 クッキーを送信 Userエージェントを送信 GETかポストか ヘッダーを送信 使い方 使い方は簡単です。 設置したPHPファイルに「url」というクエリーを追
December 1, 2009 4:36 pm | 55 Comments Today’s announcement that Google Analytics Launches Asynchronous Tracking is music to my ears. Not only does it make web sites faster, switching over to this async pattern improves uptime and increases the amount of analytics data gathered. I’ll touch on each of these three benefits, and wrap-up with an overview of the new code snippet. The pain of loading Ja
JSが少しできる人ならうじうじ考えるほどのこともでもない! 何も難しいことはない!ぶっとんぢまいなよ!ヒャッパー!!! というノリでAjaxを学んでみました。醜いです。 Ajax入門 Ajaxはいろいろできるんだぜ! 以上入門終り!キミは完璧だ!次いけ! Ajaxは非同期通信だかなんだかそんなもんはどうでもいいんだ! どうでもいい!そんなことよりもXMLHttpRequestオブジェクト生成! var request = false; if(window.XMLHttpRequest) { request = new XMLHttpRequest(); //frefox ie7,8 safai opera } else if(window.ActiveXObject) { try { request = new ActiveXObject("Msxml2.XMLHTTP"); // ie6
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く