トップページphp
1001コメント263KB

Ajaxでも語りませんか3

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/05/16(火) 12:41:57ID:???
Google Suggest

Google Maps

もう Ajax って呼んじゃおうぜ

adaptive path ≫ ajax: a new approach to web applications
ttp://www.adaptivepath.com/publications/essays/archives/000385.php

邦訳
ttp://antipop.zapto.org/docs/translations/ajax.html

AJAX - MDC
ttp://developer.mozilla.org/en/docs/AJAX

作って理解するAjax (1):IT Pro
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20051104/224040/
作って理解するAjax (2):IT Pro
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20051125/225193/

過去スレ
1 http://pc8.2ch.net/test/read.cgi/php/1110287963/
2 http://pc8.2ch.net/test/read.cgi/php/1134214341/
0123nobodyさん2006/06/08(木) 19:27:48ID:???
>>119
Safari のこと?タダですか?タダですか?
0124nobodyさん2006/06/08(木) 19:29:15ID:???
>>122
       |
   \  __  /
   _ (m) _ピコーン
      |ミ|
   /  .`´  \
     ('A`)    その手があった!
     ノヽノヽ
       くく
0125nobodyさん2006/06/09(金) 10:03:56ID:???
Safariはレンダリングの正確さとか速さもそこそこだし、悪くないと思うけどな。
何を持ってむかつくなんだろう。
Safariに対応してない場合があるから?

>>116
Safariのレンダリングエンジンは、KHTMLのレンダリングエンジンを改良して使ってるらしいな。

>>121
Operaと同時に対応するのがメンドイだけで、対応自体は簡単じゃない?
0126nobodyさん2006/06/09(金) 10:22:35ID:???
Safariでむかついた経験はものすごく沢山あるが、
・DOM構造でTEXT nodeを他のElementと同一視するのはやめてくれ。ElementとNodeは違うっつーの。
・Safari1.3でaddEventListenerでdblclickが登録できないのはなんでだ
・XMLHttpRequestがUTF16-BEすらまともにデコードできないのはどうよ
・ECMAScriptの名前付き関数式、パースすら出来ない糞低脳エンジン
・なんで body.clientWidth が使えないんだよ。window.innerWidth は明らかにおかしいだろ
・style.zIndex、W3Cの仕様通りに解釈してくださいお願いしますお願いします
01271262006/06/09(金) 10:25:39ID:???
何よりむかつくのは、Safariユーザがうるさいこと。
お前らマイノリティなんだから静かにしてろ。
0128nobodyさん2006/06/09(金) 10:50:32ID:???
Safariは最初から虫。
0129nobodyさん2006/06/10(土) 17:18:43ID:???
Webレボリューションは、リビングから: Opera、任天堂ゲーム機 Wii? でのブラウザ機能利用に向けて任天堂株式会社とパートナーシップを締結
http://jp.opera.com/pressreleases/ja/2006/05/10/
0130nobodyさん2006/06/10(土) 20:35:10ID:???
PS3はLinuxが載るだろうからFirefox使えるんじゃない
0131nobodyさん2006/06/10(土) 23:20:46ID:???
Firefoxってオープンソースだっけ?
PS3用に再コンパイルしなくちゃ。
0132nobodyさん2006/06/12(月) 04:32:14ID:???
titleの中身を変えることは出来ますか?
0133nobodyさん2006/06/12(月) 14:56:52ID:???
AjaxでブラウザのTitleを変更するという意味でしょうか?
0134nobodyさん2006/06/12(月) 15:51:43ID:???
違うドメインのデータ(プレーンテキストファイル)を取得する方法を教えてください
0135nobodyさん2006/06/12(月) 15:58:30ID:???
>>134
IEの場合はセキュリティを低に設定すれば出来る
01361342006/06/12(月) 16:02:13ID:???
phpかperlでサーバ側で取得しておいて、それを読み込むしかないのでしょうか?
0137nobodyさん2006/06/12(月) 16:34:24ID:???
>>136
同じドメインにすれば読めるよ。もしくは135の方法
0138nobodyさん2006/06/13(火) 00:49:33ID:???
>>136
一般的には君の書いたやり方だね。
または鯖側におくデータ形式をJSONにすれば、クロスドメインAjaxが簡単。
0139nobodyさん2006/06/13(火) 00:56:47ID:???
>>138
つ[Safariで動的JavaScriptロードは出来ない]
0140nobodyさん2006/06/13(火) 01:03:33ID:???
>>139
safariしねーーーー
0141nobodyさん2006/06/13(火) 01:53:54ID:???
safariとか空想の産物だろ?
都市伝説だよな
0142nobodyさん2006/06/13(火) 11:13:35ID:???
>>139
ググるとできるようになったって書いてある気がするけど。

>>140
それを言う相手はKHTML系じゃ?w
0143nobodyさん2006/06/14(水) 00:17:01ID:???

俺はSafariでは、DOMでscript要素を作って任意のJSファイルをロードさせるようにしてるが。
0144nobodyさん2006/06/14(水) 00:32:46ID:???
>>143
それが出来るようになったのは最近から。古いSafariでは動かない
0145nobodyさん2006/06/14(水) 00:34:42ID:???
既に1年ぐらいは経ってないか?
0146nobodyさん2006/06/14(水) 00:41:57ID:???
つーか1年しか経ってないのか…
0147nobodyさん2006/06/14(水) 00:43:05ID:???
>>143
スレタイから考えれば、ここではSafariは1.3/2.0以降だけ相手にしてりゃ
十分じゃねえの?

それにしても、なんかココ、古いSafariに異様に固執してる奴いるな。
0148nobodyさん2006/06/14(水) 00:44:52ID:???
>>146
>つーか1年しか経ってないのか…

マカーの習性も知らんようだな...。


0149nobodyさん2006/06/14(水) 00:54:32ID:???
過去に嫌な思いしてトラウマになってるとかだろうな。
階段から落ちた犬みたいで可愛い奴だw
0150nobodyさん2006/06/14(水) 01:03:58ID:???
好き嫌いで対応してるのにしてないとか語られてもねぇ
0151nobodyさん2006/06/14(水) 03:01:19ID:???
マック対応してなくてもおk
0152nobodyさん2006/06/14(水) 09:23:28ID:???
javascriptがONになっていない場合、非ajaxのページに自動的に飛ばすことは出来ますか?
0153nobodyさん2006/06/14(水) 10:30:05ID:???
>>152
<script type="text/javascript">
<!--
function jump(){
location.href = "ジャンプ先のurl";
}
setTimeout (jump,0);
//-->
</script>
でAjaxのページに飛ばせばいい
0154nobodyさん2006/06/14(水) 10:51:00ID:???
>>153
なんでsetTimeoutで実行するの?
0155nobodyさん2006/06/14(水) 16:33:34ID:???
>>154
一回やればいいからでしょ
0156nobodyさん2006/06/14(水) 16:48:48ID:???
<script type="text/javascript">
<!--
location.href = "ジャンプ先のurl";
//-->
</script>
これで充分じゃないか?
0157nobodyさん2006/06/14(水) 23:16:59ID:???
JavaScriptがONじゃないのにJavaScript書いてちゃんと飛んでくれるの?
0158nobodyさん2006/06/14(水) 23:18:44ID:???
クソあほか。

JavaScriptがONの場合にAjaxのページにジャンプするんだよ。
0159nobodyさん2006/06/14(水) 23:20:51ID:???
逆転の発想を思いついた>>153は奇才
01601572006/06/14(水) 23:29:08ID:???
>>158
あぁ!なるほど!!
俺頭固い・・・いや悪いな
0161nobodyさん2006/06/14(水) 23:38:39ID:???
ただ、ユーザーからすると自動的に飛ばされるのは実に胸糞悪いのだが。

<body>
<script src="xxx.js"></script>
<noscript>…</noscript>
</body>

xxx.js:
document.write(〜HTMLの内容がずらずら〜)

難点は通信量
0162nobodyさん2006/06/15(木) 00:56:06ID:???
>>161
document.write()を使ってHTMLをロードすればいいでしょ。
0163nobodyさん2006/06/15(木) 01:03:31ID:???
>>162
いや161はそれを意図しているんだけれど、
javascriptをonにしている人間も結局noscriptのhtmlも読まなくてはいけないのは釈然としないなぁ、と。
0164nobodyさん2006/06/15(木) 04:16:49ID:???
自動判別ページ・JS ページ・noJS ページと3つ作って選択できるようにすればいい。
0165nobodyさん2006/06/15(木) 09:06:50ID:???
>>164
勝手に遷移するのが嫌だ、という話とどう結びつくんだ?
0166nobodyさん2006/06/15(木) 09:11:41ID:???
勝手に移動するのが嫌な人はJSページかNoJSページのリンクを選べ、
どっちでもいいorよくわからない人は自動判別ページのリンクを選らべ、
ってことかな?
無駄が多くなるよね。
0167nobodyさん2006/06/15(木) 11:18:32ID:???
  ┏┳┳┓              ┏┳┳┓
┏┫┃┃┃ スレ違い雑談は┃┃┃┣┓
┃┃┃┃┣┓   ここまで.┏┫┃┃┃┃
┃      ┃┃┏━━━┓┃┃      ┃
┃スレ違い ┣┫ ・∀・ ┣┫  END ┃
┗━━━━┛┗┳━┳┛┗━━━━┛
            ┏┻┓┃
        ┏━┛  ┣┻┓
        ┗━━━┫  ┗━┓
                ┗━━━┛
0168nobodyさん2006/06/15(木) 15:21:29ID:???
どこがスレ違いなんだ?
0169nobodyさん2006/06/15(木) 15:41:45ID:???
>>167はAAを使いたかっただけの厨房
0170nobodyさん2006/06/15(木) 18:24:07ID:???
>>166
JS・noJS ページと両方作ることが前提なら自動判別ページ付け足すぐらい訳ないと思うが…
JS 判別ロジックを分離できるから見通しも良くなると思うし、
ユーザ側からも裏で何かやられてる感は少なくなると思う。

って自動判別の意味が食い違ってるのかな。
>164 のは判別してそれぞれのページにすぐ飛ばすページって意味ね。
0171nobodyさん2006/06/15(木) 18:55:57ID:???
>>170
いや、今回問題になっているのは飛ばさずにどうするか、という話。
飛ばされると戻るボタンが使えないとかブックマークできないとか
色々と問題があるから嫌だね、という流れだと俺は思っていた。
0172nobodyさん2006/06/15(木) 20:35:08ID:???
個人的にリダイレクトは大っ嫌いだな。
飛ばされないように対策してるぐらいに。

理由は戻るのがだるいとか、
自分の意図しない操作を勝手にさせられてるのとかがむかつく。
0173nobodyさん2006/06/15(木) 21:15:04ID:???
そういえば、javascriptで前のページに戻すとかできるよね。
0174nobodyさん2006/06/15(木) 22:28:29ID:???
それもgoogleとかから飛んだ場合戻れないから微妙だよ。
戻るならちゃんと上の階層なりに戻して欲しい。
0175nobodyさん2006/06/16(金) 00:33:46ID:???
http://socket7.net/lace/
のチャットですが Live Demo で日本語もちゃんと通るの確認したのち
試しに xrea に設置してみたのですが日本語が文字化けしてしまいます。
Logs はキチンと表示されているのでどこに問題があるかわかりません。

xrea 鯖お持ちの超エキスパートな方いましたら
設置報告&対処法お願いしたいのですが。
0176nobodyさん2006/06/16(金) 01:26:46ID:???
>>175
じゃあ xrea ユーザが答えてやる。
自分の問題を自分で解決できない奴は xrea を使うな。

以上。
0177nobodyさん2006/06/16(金) 01:28:39ID:???
自分で解決できないやつって言うのは言いすぎだけど、最低限の知識もなく、そういうことしちゃいけねえよ、ってことだろうな。
0178nobodyさん2006/06/16(金) 02:13:27ID:???
>>176
>>177
ごもっともなご意見ありがとうございました。
自力ではお手上げなので設置はあきらめます。

ただなぜ xrea では文字化けをするのか気になるので
その原因だけは自分なりに調べようとおもいます。

失礼いたしました。
0179nobodyさん2006/06/16(金) 03:18:30ID:???
戻るボタンがうまく機能しないというのはajax全般にいえることではないのか?
0180nobodyさん2006/06/16(金) 04:47:34ID:???
>>172
>自分の意図しない操作を勝手にさせられてるのとかがむかつく。
だからそのためにページ3つから選択って書いたんだがな…
つーか俺の論拠もその“意図しない操作を勝手にさせらてる感”なんだが。
同じページで全く違う挙動ってのはキモくないか?
Ajax があっても無くても同じような UI のページなら良いのかも知れないが、
俺は Ajax 用と HTML 用とで結構変える気がするから、ユーザの好みも分かれそうなんだよな。
ぶっちゃけ JS 嫌いの奴とか下はそんなに減ってないし、そういう奴に限って JS 自動切りとか使わないし。
とりあえず、自動判別ページをわざわざ選択しながら自動で飛ばされたら胸糞って奴は少ないと思う。
戻るボタン云々はクオリティの問題だな。
0181nobodyさん2006/06/16(金) 14:04:53ID:???
>>178
すれ違いなんですよ!!!!!!!!!!!!!!!!!!!!!しね。
0182nobodyさん2006/06/16(金) 23:58:27ID:???
勝手に飛ばされるのが嫌とか言ってる奴ら、
location.replaceを知らんのけ?
0183nobodyさん2006/06/17(土) 00:29:37ID:???
>>182
それを飛ばされないと表現するかどうかはかなり微妙
0184nobodyさん2006/06/17(土) 00:39:04ID:???
>>175
どうせmbstringまわりでしょ。
.htaccessにこんなの追加していじくってみたら?

php_value default_charset UTF-8
php_value output_buffering on
php_value output_handler mb_output_handler
php_value mbstring.internal_encoding UTF-8
php_value mbstring.http_input UTF-8
php_value mbstring.http_output UTF-8
php_value mbstring.encoding_translation on
0185nobodyさん2006/06/17(土) 02:54:13ID:???
aaa.txt
bbb.txt
ccc.txt
を非同期で同時に読み込む際に、コールバック関数側で、コールバック関数が呼び出された際に
どのファイルを読み込んだのか、判別する方法はありませんか?
0186nobodyさん2006/06/17(土) 05:26:12ID:???
>>185
関数はその外側の環境で定義された変数にアクセスできるので、それを利用すれば良し。
(クロージャってやつ)

var file="aaa.txt";
function callback() {
alert("file="+file);
}
async_process1( file, callback );

3つなら・・・
var fileA="aaa.txt";
async_process1( fileA, function() { callback_inner(fileA) } );
var fileB="bbb.txt";
async_process1( fileB, function() { callback_inner(fileB) } );
var fileC="ccc.txt";
async_process1( fileC, function() { callback_inner(fileC) } );

とかなぁ
0187nobodyさん2006/06/17(土) 10:11:19ID:???
外側の変数にアクセスできることをクロージャと言うらしい。
0188nobodyさん2006/06/17(土) 10:15:59ID:???
>>186
ちょっと危険だからお勧めしない。
var fileA="aaa.txt";
async_process1( fileA, function() { callback_inner(fileA) } );
fileA = "error";
とかやってしまうと、callbackに呼ばれるのは"error"になってしまう。

async_process1( fileA, function() { var file = fileA; callback_inner(file) } );


>>187
本来の定義は変数を包み込むことだろうな
0189nobodyさん2006/06/17(土) 13:05:50ID:???
↓ここからクロージャの定義で議論
0190nobodyさん2006/06/17(土) 13:07:21ID:???
議論ここまで
0191nobodyさん2006/06/17(土) 14:45:29ID:???
>>188
その2つのバージョンは全く同じ動きをすると思うけどな・・・

{
var fileA="aaa.txt";
async_process1( fileA, function() { callback_inner(fileA) } );
}

外で変数書き換えるのが怖ければブロックで囲めばよし。
0192nobodyさん2006/06/17(土) 15:14:58ID:???
>>191
指摘は正しいが、その書き方はナンセンス。
{
var fileA="aaa.txt";
async_process1( fileA, function() { callback_inner(fileA) } );
}
fileA = "xxx";
これで駄目になる。

正しくは、
var fileA="aaa.txt";
async_process1( fileA, (function() { var file = fileA; return function(){ callback_inner(file); }; })() );
0193nobodyさん2006/06/17(土) 16:03:11ID:???
>>192
ためしてみた。「ブロックで囲めばよし」は嘘でした。orz
関数で囲まないとダメらしい。案外怪しい言語だ・・・

>正しくは、
>var fileA="aaa.txt";
>async_process1( fileA, (function() { var file = fileA; return function(){ callback_inner(file); }; })() );

それも正しいけど、外側に関数使ったほうがシンプルぽい

function async_start(file) {
async_process1( file, function() { callback_inner("file="+file); } );
}
async_start("aaa.txt");
async_start("bbb.txt");
async_start("ccc.txt");
0194nobodyさん2006/06/17(土) 16:36:15ID:???
>>193
スコープ周りの仕様書を読んでおくことをお勧めする
関数はそれでもいいけど、関数を増やさないようにするのがECMAチックな書き方
0195nobodyさん2006/06/17(土) 18:20:05ID:???
async_process1( fileA, let (file = fileA) function(){ callback_inner(file); } );
0196nobodyさん2006/06/17(土) 22:35:54ID:???
関数を増やさないようにするのがECMAチックな書き方、だそうだ。一体どの仕様だろうかw
0197nobodyさん2006/06/18(日) 00:53:29ID:???
誤解しても仕方ないけど曲解するのはバカだなぁ
0198nobodyさん2006/06/18(日) 15:59:13ID:???
曲解って意図をもってすることだから、馬鹿か否かとは無関係だと思う。
0199nobodyさん2006/06/18(日) 16:22:38ID:???
いやその理屈はおかしい
0200nobodyさん2006/06/18(日) 16:37:32ID:???
曲解する時点でまず人間的にダメだと思う
0201nobodyさん2006/06/19(月) 15:04:07ID:???
このスレでAjaxについて語ってない奴はみんな人間的にダメだと思う。

>>32
Safariサポート開始したみたいです。現時点の最新バージョンのみですが。
ttp://www.google.com/support/calendar/bin/answer.py?answer=37057&topic=8581
やはりもう古いSafariは切り捨てでいいんじゃないかと。。。
0202nobodyさん2006/06/19(月) 15:30:15ID:???
検索エンジンに引っかかるようにするには、どのようにするのが定石ですか?
ajaxで出来たページと、旧来の方式のページ両方を用意するすかないのでしょうか?
0203nobodyさん2006/06/19(月) 18:10:29ID:???
それ以外に方法あるのか?

Ajaxで旧来の方式のページを動的ロード・表示をするとか?
0204nobodyさん2006/06/19(月) 18:31:30ID:???
Ajaxのページというのがどの程度のものかはわからないけれど、
そのページで提供するサービスをキーワードとしてmeta情報に付加しておけばいいのではないかな?

掲示板とかであれば、検索エンジンが来た時だけ内容を表示するとかになるのかな
0205nobodyさん2006/06/19(月) 19:12:54ID:???
>>204
んな小細工やるくらいなら最初から両方用意した方が良いと思うがな
0206nobodyさん2006/06/19(月) 20:56:21ID:???
>>205
確かに
0207nobodyさん2006/06/19(月) 23:39:34ID:???
皆さんにおたずねします。

↓のサイトが提供しているような、
Ajaxデスクトップを実現するフレームワークってありますか?

http://www.startforce.jp/
0208nobodyさん2006/06/19(月) 23:43:33ID:???
Bindows?
0209nobodyさん2006/06/20(火) 04:57:08ID:???
.htaccessでブラウザ毎にajaxかそうでないぺーじかに振り分けようと思うのですが、
javascriptが使えるかどうかの判定は、.htaccessでできますか?
0210nobodyさん2006/06/20(火) 06:26:01ID:???
やろうと思えばできますよ。
0211nobodyさん2006/06/20(火) 19:42:38ID:???
Googlebotとかは、noscriptを表示する?
0212nobodyさん2006/06/24(土) 17:08:01ID:???
The JavaScript Library World Cup
http://www.sitepoint.com/article/javascript-library
0213nobodyさん2006/06/24(土) 17:09:59ID:???
Top 10 Web Developer Libraries
http://www.cameronolthuis.com/2006/06/top-10-web-developer-libraries/?
0214nobodyさん2006/06/24(土) 23:06:09ID:???
>>213
なんでURLの後ろに「?」を付けてるの?
0215nobodyさん2006/06/25(日) 12:08:55ID:???
どうでもいいことを突っ込むなガキ
0216nobodyさん2006/06/25(日) 17:30:18ID:???
>>215 m9(^Д^)
0217nobodyさん2006/06/25(日) 17:38:38ID:???
勘違い野郎は帰れ
0218nobodyさん2006/06/26(月) 23:53:32ID:???
moo.fxが一位だけどどうよ?

prototypeよりいいのかな。
0219nobodyさん2006/06/27(火) 00:27:34ID:???
prototypeはあり得ない。
0220nobodyさん2006/06/27(火) 00:51:40ID:???
desknet's
0221nobodyさん2006/06/27(火) 00:57:15ID:???
なんだっけ・・・・あのつなげるやつ。
0222nobodyさん2006/06/27(火) 02:18:58ID:???
ボンドだろ?
■ このスレッドは過去ログ倉庫に格納されています