ajaxを強制終了する

名セリフ集、というともっともらしいけど。感想文が苦手で、ダ・カーポや、お楽しみはこれからだ、のように、読んだ本の印象に残ったフレーズを抜書きするようにしている。抜けがあったり、サボってたりしつつも、データとして蓄積されてるのが400弱。当然ながら、アマゾンに問い合わせにいって、書影など書誌情報詳細を引っ張ってくるスクリプトにしてある。
んだけど。アマゾンへの問い合わせが帰ってくるのを待つ時間が冊数分必要で、検索などで多数の本をリクエストすることになると、フリーズしたんか、ハングしたんか、というぐらい待つことになる。
なので、
著者名で検索の場合、とりあえず登録されているタイトルだけ別のコンテナに表示して、そのタイトルをクリックしたら、その一冊だけの分を表示するようにしよう。
と考えた。
1.著者名検索で、まずajaxでアマゾンに問い合わせにいく。
2.時間がかかるので、別コンテナに、ajaxでウチのDBに問い合わせてタイトルだけ表示する。
3.1がまだ終わってなくて、2で表示されたタイトルで気になったのをクリック。
新たに ajaxでアマゾンに問い合わせに行く。
4.一冊だけなので、すぐにアマゾンからの返答があって、メインエリアに表示される。
5.しばらく眺めてると、1でアマゾンに行ってたのが帰ってきて、メインエリアが書き換わる
6.びっくりする。
びっくりするのは困るので、3で別コンテナのタイトルをクリックしたら、まだ終わってない1の問い合わせを強制終了させたい。
という要件。
グーグルで検索して解決。ありがとうございます。
var req
req = $.ajax()
としておいて、ajaxで問い合わせるときに、
req.abort();
で、今、走ってるajaxの強制終了となる。
強制終了させて、新たに ajaxを走らせたら、その結果は success ではなくて、error で受け取る。これで、とりあえず問題解決。
そんなこんなの小説名セリフ集のページは こちら
ちなみに、こんなフレーズを抜粋。ときどき眺めてはニンマリしております。
歩き去っていく男に、ぼくは呼びかけた。
「あなたは神を信じていますか?」
男は立ち止まって、しばらくじっとぼくを見つめた。その質問になにか裏がないか、疑っているかのように--ぼくがこの教区民に雇われて、男の信仰の深さを調べてでもいるかのように。もしかすると男はただ、深夜に町の広場にすわって、赤の他人に信仰の確証を乞うほど絶望的になっている人間を、如才なくあしらおうとしていただけかもしれない。
男はかぶりをふった。
「子どものころは信じてた。だが、いまは違う。神ってのは、なかなかいい思いつきだが……まるで意味をなさん」
男はまだぼくの動機をはかりかねるように、疑い深げな目でこちらを見ていた。ぼくはきいた。
「では、生きることがつらすぎはしませんか?」
男は笑って、「四六時中ってわけじゃないさ」
『祈りの海』
グレッグ イーガン
[06/01 10:37:49]
そういや。きちんと考えずに作っていったもんだから、気がついたらajaxだけのページ遷移のないページになってしまった。
SEOを考えるとまずいので、ECサイトなんかだとこんな作りは却下。
集客に関しては、googleさま yahooさまから一見さんを拾い集めるのがセオリー。この名セリフ集は検索エンジンから見ると1ページだけの存在で、ユーザーにとって価値は低い、と判断される。外部リンクもないし。
ajaxについては、流れを追うのがけっこう面倒で、デバッグしにくい、という面と、ページをいちいち作る必要がなくてラクチン、という面が、作る側にはあって、無問題に大歓迎とは言い切れない。でも、使う側から見ると。スマホな感覚というか、そのページの中だけで済むので、ページ全体が書き換わるのを待つ必要がなく、コンテンツを読み込む間にほかのコンテンツを眺めてればいい。錯覚かもしれないけど、待たされないってことで、疲れない・ストレスが少ないページになるような気がする。
スマホ対応、IE8対応

この雑記帖。こないだは、IEはもう止め止め、ここはHTML5の実験にする、とか言ったんだけど、現実的にはIE8はまだまだ全然主流で、どこかの記事では、日本でのシェアは60%程度で、圧勝。ここのような辺境のブログのアクセスログを見ても、IE8は無視できないのでありました。
てことで、検索してみたら、ぞろぞろ出てくる、HTML5のIE8対策。WEB制作会社などは死活問題。クライアントとか、声のでかいだけの上層部に振り回されて、現場は阿鼻叫喚吐血の図、というのが想像に難くない。心中・胸中お察しします。
とりあえず、ここも対応できるなら対応するに越したことないよね、ということで。
html5で書いたサイトをie8にも対応させる。
スタイルシートで新要素をブロック要素にする。
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary
{ display:block; }
グーグルのjavascriptを読み込ませる
http://html5shiv.googlecode.com/svn/trunk/html5.js
こいつは、html5以降の新要素をcreateして認識させる…て、よくわからんので、使い方としては呪文でよろしい。
さらにhtml5とは違うけど css3で追加された角丸などを ie8 に適用するのに
https://github.com/lojjic/PIE/downloads
PIE.htc というのをダウンロードして、サーバーのどこか適当なところに置く(わたしは css と同じ場所に)
そしたら、角丸を使っているところすべてにいちいち
behavior:url("PIE.htc");
position:relative;
を書いていく。PIE.htcのurlは呼びだされるページからの相対パスか、絶対パス。
以上で、html5とcss3をie8に対応させることができた、かな。
スマホ対応も探してみた。
http://dev.screw-axis.com/doc/jquery_mobile/
いや、いまどき、スマホのリクエストが多いので、ちょっと勉強も兼ねて、というスケベ心満載。
jquery.mobileというフレームワーク(?)を使えばあっさりさっくり。これ、ほとんどブロック。昔懐かしの電子ブロックのようなもの。用意されている部品をマニュアル通りに書いていけば、PC版のサイトをあっさり短時間でモバイル、スマホ対応にできてしまう。
スマホに搭載されるブラウザに対応イコールwebkit対応なので、なにもこのフレームワークを利用しなくても、HTMLとCSSを書けばいいんだけど、このフレームワークは、いわゆるスマホのお作法・流儀・デザイン・エフェクト・UIを提供してくれてる。専用アプリ同様の風味なのだ。
ここ、すごく大事なところだと思っていて。
PCとスマホなどのモバイルとでは、見ることになる情報が同じでも、ユーザーの距離感が違う。肌感覚とかいうと胡散臭いけど、対デバイスの距離というか。
なので、PC版をそのまま持ってきても違和感がつきまとう。弱ったなあ、と思ってたところにこのフレームワーク。
今日、それこそ2時間ほど眺めてただけで、とりあえずこの雑記帖のスマホ版をでっち上げることができた。細かいところはまだこれからいじるとしても、2時間程度で移植できたということが、このフレームワークの凄さだなあ。
文字数の制限なんか動的にプログラムでごそごそやってたのを面倒みてくれるし、1pxの影なんてcssでうんざりしてたのを面倒みてくれるし、プログラム的なところもデザイン的なところも両方ともフォローしてくれてる。
いやもう、今日、絶賛。
個人情報をちょっと防衛

クラウドだWEBサービスだ、これが便利、意識の高い人間ならこれだ!みたいなこと言っちゃってる記事もあるけど、わたしはグーグルだろうがアマゾンだろうが、ネット企業は信用しない。ていうか、ネットの生い立ちからすると、ネット上にプライベートな場所などありえない。
なので、漏れると困るような情報は、ローカルPCか手帳。WEBにあげるなんてとんでもない、と思ってる。
とはいえ。WEBで営業するとか、自分宣伝するとか、通販するとか。そういった場合に、続きはWEBで、というわけにはいかない。メールアドレス、住所、電話番号などをWEBサイトに掲載する必要が出てくる。具体的に言うと、特定商取引にもとづく表示は、連絡先、電話番号の表示が決められている(ネット上で販売してたり、サービス提供して金銭のやりとりが生じるのに、特定商取引の表示がないようなサイトは、法律違反)
提供しているものを求める顧客に情報を開示するのは当然だし、むしろそれが目的だからいい。問題が、ロボットや名簿収集業者による地引網的な情報収集。
このブログのプロフィールや、創作文芸見本誌会場HappyReading の特定商取引にもとづく表示といった個人情報は、現時点で、簡単にコピペできない、ロボットによる自動収集ができないように小細工してある。
個人情報防衛策Tipsってやつだ。
その0.
ページに表示するのは ajax 経由。
その1.
javascriptがONになっていていないと表示しない。
その2.
jQueryを利用して、コピーできなくする。
その3.
ajaxで呼び出されるスクリプト側でリファラやbotなどのチェック。など、ロジックをいれて、ページ表示をコントロール。
これだけで、少なくとも現時点では、クローラによる収集を回避。ひとを使った収集も、コピペができないので面倒になっている。
やり方次第で、無防備無自覚に、個人情報をばら撒くことは避けられるので、プロバイダなどに問い合わせてもいいかも。
ブログをhtml5で書き換えてみる

とりあえず。この雑記帖をhtml5で書き換えてみようと思い立つ。いや、仕事を取るのに、html5の案件も増えつつあるのだ。で、この雑記帖。もうかれこれ10年以上使い続けてきていて、ベースがテキスト、というかcsv。気がつけば4Mを超える大きさ。駄文譫言の積み重ね。ついでにこれをデータベースに置き換えることにした。lolipopのmysqlは重くて使い物にならんので、やっぱりsqliteに。
解説ページを見ながら、セクショニングタグとか初耳の単語に戸惑いつつ、エディタでゴリゴリ書いてそこそこの形になったな、クロスブラウザチェックもやるか、とIE8で見て仰天。IE8はhtml5のタグを解釈してくれない。検索して調べてみると、html5をIE8に対応させるためのjavascriptなんてのがある。
またIEだ。うんざり。
どうせ、アクセスの少ない辺境のブログだ。IEなんぞ切って捨ててしまうことにした。
小さなスタートアップが、IEを捨てて10万ドル以上節約した という心温まる記事もある。
とはいえ、日本だとIEのシェアは50%以上あるという記事もある。仕事となるとIEに対応しなきゃいけないので、html5は時期尚早、だろうなぁ。ここは実験場ということで。
まだまだデザインがしょぼいし、作っていない機能もいくつかあるので、試運転中。
[06/08 10:42:56]
html5に書き換える、の続きはこちら↓
スマホ対応、IE8対応 http://t2aki.doncha.net/?id=1338281023
[05/27 23:53:13]
1998年を見ると、司馬遼太郎とかジョージ・ロイ・ヒルとか。相変わらずだなあ。
ちょっと勉強すれば誰でも作れる

WEBサービスの話だ。
phpを久しぶりに触ってみて思ったんだけど、perlにしろphpにしろ、以前少しだけ触ったrubyにしろpythonにしろ、WEBサービスに使われているような言語は、習得・修得のハードルが低い。誰でもちょっと勉強すればWEBサービスは作れる。フレームワークがわからなくても、functionをベタに並べて書いていくだけで、カタチになる。実際、プログラムなんて勉強もしたことのないわたしでもいくつかWEBサービスを作って公開している(ソースコードはぐちゃぐちゃだけどね)
なもんで、いまどき、WEB用のライトウェイトランゲージが使えると言っても、なんのアドバンテージにもならない。開発言語はどうでもいい。
それよりも。
何をしたいのか、何を作りたいのか、どんなユーザーを対象にするのか、そのためにどんな知識が必要で、作りたいものに密着した利便性を考えてどんな機能を作るのか、WEBサイトの使い勝手はどうするのか。
で、さらに、使ってもらうために、集客・そこにひとを集めるのはどうするの。
誰でもWEBサービスを作って公開できるとなると、最先端の技術を投入してスゲーの作ったらから使って、なんてのは的外れなだけ。使う側は技術になんて興味はない。はてなブログの失敗はそこだろう。
自分の興味対象に対して、強い動機があって初めて、使ってみたいものができる。痒いところに手が届く、を、そこきたか、と思わせるものができる。
以前から言ってるように、WEBサービスなんてのはしょせんただのガワ、ウツワ。何を入れるのか、どうすれば思ったように入ってくれるのか、そこを考えられる資質こそ必要。
WEBサービスとして、それで金になるかどうか・社会貢献できるかどうかも含めて、面白いかどうかの判定できるようにしたいもんです。
いや、一言でいうと、なんか面白いことしたいよー、というだけの話。
| << | 2026/2 | >> | ||||
|---|---|---|---|---|---|---|
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
【最近の20件】
- 20260129 ブログをレスポンシブ対応にリニューアル
- 20260126 ブログのふり返り
- 20260121 小ネタ:ed25519秘密鍵公開鍵とJson serialized canonical
- 20260120 ActivityPubは自作実装しよう!
- 20260117 RFC9421版HTTP Signatureに対応
- 20260111 HTTP Signatureの署名対象文字列
- 20260109 web本棚のActivityPub対応
- 20260106 web本棚のソースコード公開
- 20260104 web本棚
- 20260101 謹賀新年2026
- 20251231 2025年ふりかえり
- 20251213 perlと30年
- 20251210 ActivityPubの投稿削除
- 20251101 日常雑感
- 20251026 テキトーフェッチメール
- 20251014 ActivityPubサーバーで投稿の編集
- 20251008 元WINDOWS10のノパソにlinux mint
- 20251002 GBLシーズン「変わりゆく物語」でACE到達
- 20250925 ブログのアクセス制限
- 20250922 ActivityPubサーバーに引用を実装






