■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50

read.cgi 2006―JavaScriptはCGIの夢を見るか

541 : 株価【1600】◆cZfSunOs.U :2006/08/14(月) 16:12:36 ID:WxMZYEQv0
>>538少なくとも Firefox では問題ないようでした.

542 :root▲ ★ :2006/08/14(月) 16:15:07 ID:???0 BE:2554447-PLT(15697)
>>540
「美乳の手法」ってやつでしたっけ。
ただし「美乳」は、euc-jp の時みたいですけど。

543 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 16:17:17 ID:fNT1qkg10
個人的には<!--ゲイツ氏ね-->とでも

544 :ひろゆき@どうやら管理人 ★ :2006/08/14(月) 16:18:00 ID:???0 BE:397297-DIA(30602)
IEのバージョンによってOKだったりするんですかね?


545 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 16:19:43 ID:pfMHSnaj0
7では直っていることを期待したいですね。

546 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 16:19:47 ID:LiQ4r6Ez0
>>544
IE7だと大丈夫という説があるけど未確認です

547 : 株価【1600】◆cZfSunOs.U :2006/08/14(月) 16:21:16 ID:WxMZYEQv0
>>540それだと,IE の場合キャッシュを使わず毎回サーバから取ってくるのと
変わらない,っていうか dat の仕様変更になるんで各方面に与える影響が......

# dat の仕様変更するなら,上の方で出てた XML の CDATA セクションに突っ込む形の方が......

548 :root▲ ★ :2006/08/14(月) 16:29:49 ID:???0 BE:2189164-PLT(15697)
dat に「美乳」みたいなの入れる方向は、全く考えてないです。>>547
特定の実装の虫にそういう方向で対応するのは、
管理人が「やれ」といわない限り、ない方向で。

549 :ひろゆき@どうやら管理人 ★ :2006/08/14(月) 16:35:58 ID:???0 BE:75762-DIA(30602)
文字化けの問題がIE7で解決されるのであれば、
いずれ解決されるって前提で進めたほうがいいとおもうです。


550 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 16:47:54 ID:pfMHSnaj0
初回 sjis取得

リロード1回目(更新あり)
   sjis取得
リロード1回目(更新なし 304)
   sjisキャッシュ破棄 → utf-8取得

リロード2回目以降(更新あり)
   sjis取得
リロード2回目以降(更新なし 304)
   sjisキャッシュ破棄 → utf-8キャッシュを表示

・・・混乱してきた。

どうせIE7で直るなら、変な小細工を考えないほうがいいですね。

551 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 16:51:49 ID:1kFRvFPJ0
UAで判断する方針?

552 : 株価【1600】◆cZfSunOs.U :2006/08/14(月) 16:56:23 ID:WxMZYEQv0
>>118(って今はないのかな?)を IE 7 で見てもらって問題ないなら
文字コード変換かけるのは IE 6 限定ってことでもいいかもですね.

553 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 16:56:32 ID:oLLYslxgP
>>549
オートアップデートである日突然元の仕様に戻って2ちゃん化け化けとか

554 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 17:14:04 ID:clLu5sZ/0
if (window.XMLHttpRequest) { //Mozilla, Firefox, Safari, IE7
 sjisのdatでok
}else if(window.ActiveXObject) { //IE5,IE6
 urf-8のdatで
}else{ //そもそも無理な人たち
 read.cgiへ
}

これで、safari以外たぶん大丈夫になる。

555 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 17:36:00 ID:fNT1qkg10
まずはSJISのdatを取得して、化けてる(304でキャッシュを開いてる)時だけUTF8版を取りに行く。
更新がずっと無ければUTF8版のキャッシュが表示される。

2回のリロードごとに更新があると効率が悪い。


556 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 23:17:51 ID:LiQ4r6Ez0
>>552
>>508で書きましたけど>>118はもうつながらないです。
read-sjis.jsとかdso上に置けませんか?

557 :動け動けウゴウゴ2ちゃんねる :2006/08/14(月) 23:37:52 ID:sW64q9m+0
streamカモーン

558 : 株価【1600】◆cZfSunOs.U :2006/08/15(火) 00:38:31 ID:ojmXh8q60
Shift JIS のままの dat を取ってくるなら,>>510の設定を dso に入れてほしいと......

まぁどっちにしろ,少なくとも IE 以外は Shift JIS の dat を取ってくる形にすれば
ムダにはならないんで.

559 :root▲ ★ :2006/08/15(火) 00:49:21 ID:???0
>>510の下の設定を dso に入れるです。

560 :root▲ ★ :2006/08/15(火) 00:53:39 ID:???0 BE:1459182-PLT(15697)
>>559
done.

561 : 株価【1600】◆cZfSunOs.U :2006/08/15(火) 01:00:44 ID:ojmXh8q60
>>559-560乙です.

とりあえず,しばらくの間 IE 6 も含めすべて Shift JIS の dat を取ってくる形にします.
IE 6 の問題体験ツアーってことでw

562 :root▲ ★ :2006/08/15(火) 01:04:45 ID:???0 BE:5746379-PLT(15697)
>>561
だめ出ししようってことすね。了解です。

563 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:05:26 ID:qeiAdM0E0
なるほど。リロードするとおもくそ化けますた@IE6
Firefox 1.5.0.6では問題なし
ではリブートしてIE7で試してみますノシ

564 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:15:29 ID:zanmU7rX0
>>563
ウチのIE6は化けないけど、、、

565 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:21:17 ID:qeiAdM0E0
>>563
read.html更新されてます?
キャッシュの設定は?
とりあえずIE7だと化けませんですた

566 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:21:44 ID:qeiAdM0E0
リンク先間違えたorz
×>>563
>>564

567 : 株価【1600】◆cZfSunOs.U :2006/08/15(火) 01:24:43 ID:ojmXh8q60
Opera/9.01 (X11; SunOS i86pc; U; en) でも問題ない模様.


>>564上の方にも IE 6 で文字化けしないって人がいたけど,それはブラウザの設定で
キャッシュが残らないようになっていたためだったということなんで (>>135),そのあたり確認を......

>>565どもです.IE 7 なら大丈夫そうとなると,dat-utf8 は IE 6 限定でもよさそうかな.

568 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:29:54 ID:v4RrwvPg0
IE5を見放さないで

569 :root▲ ★ :2006/08/15(火) 01:31:41 ID:???0 BE:547823-PLT(15697)
>>568
開発元(MS)って、IE 5.x をまだサポートしていましたっけ。

570 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:32:38 ID:Vjx6htrB0
IE5とIE6は、ちょうど限定して使える、
responseBodyで、クライアント側で文字コード変換しようか。

571 : 株価【1600】◆cZfSunOs.U :2006/08/15(火) 01:36:07 ID:ojmXh8q60
>>568まぁ read.html の対象外となっても決して利用不能になるわけではなく,
単に従来式の read.cgi に振り分けることになるだけなんで......

>>570それって,かなり重いって話もあるようですが......

572 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:37:14 ID:qeiAdM0E0
>>569
IE 5.5はかなり昔にサポートが切れますた
Windows 2000でのみ、IE 5.01がまだサポートされてます
(OSに付属のバージョンなのでOS自体と同じサポート期間)
でもどのみち5.0はダメっぽいので(>>471)
0.4%程度なら(>>469)read.cgiに振っても負荷にはほとんど影響しないでしょう。
>>570
もしかして /dat-utf8 を全廃できる?

573 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:48:15 ID:v4RrwvPg0
マカーos9組は、IE5.1.7でサポート終了してます。(涙

574 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:50:41 ID:Vjx6htrB0
http://winofsql.jp/VA003334/asp051115161559.htm#ttl3

vbsのはあった。

 ' バイナリ -> 内部コード
 For i = 1 To LenB( strBin )
  c1 = AscB(MidB(strBin, i, 1))
  if &H81 <= c1 and c1 <= &H9f or &He0 <= c1 and c1 <= &Hfc then
   i = i + 1
   c2 = AscB(MidB(strBin, i, 1))
   c1 = c1 * 16 * 16 + c2
  end if
  strVbs = strVbs & Chr(c1)
 Next

処理自体はこのぐらい。

575 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:52:49 ID:qeiAdM0E0
>>574
VBならStrConv一発
http://www.f3.dion.ne.jp/~element/msaccess/AcTipsVbaXMLHTTP.html
IEだとADODB.Streamというのが使えたらしいが今はだめぽ
http://ponpon-village.net/ajax/xmlhttp.htm

576 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:53:07 ID:toLvEDbv0
IEのバージョンとかにかんしては
http://www.quirksmode.org/browsers/multipleie.html
http://blog.ikesai.com/log/2006/07/ie7_beta3ie6.html
ここで過去のIEやら未来のIE拾ってくれば検証できるかな
あとでかいスレを読み込んだ時にフリーズするから
http://www.kawa.net/works/js/8queens/nqueens.html
ここの手法を用いて逐次表示にして欲しいところ。

文字化けとかは正直よくわからん

577 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 01:58:34 ID:zanmU7rX0
理由はわからないけど何故か文字化けしないっす
キャッシュも残ってるし、、、

578 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 02:01:12 ID:qeiAdM0E0
>>577
read.htmlのソースには datx って入ってる?
dat-utf8 が入ってたらソースが古いのでスーパーリロードとかしてみて

579 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 02:08:14 ID:zanmU7rX0
キャッシュクリアしてみたりスーパーリロードしてからでも化けないっす、、、謎

580 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 02:09:18 ID:qeiAdM0E0
>>574
あ、VBじゃなくてVBSか。VBSにはStrConvはないのね。
どうせIE専用なんだからVBScriptで関数作ってJavaScriptから呼べばいいと思われ

581 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 02:10:09 ID:qeiAdM0E0
>>579
まあ化けない環境が存在するからって化ける環境の対策が不要ってことには
ならないので。

582 : 株価【1600】◆cZfSunOs.U :2006/08/15(火) 02:19:16 ID:ojmXh8q60
でもまぁ,IE 7 で問題が解消するとなると,いずれ IE 7 の割合が増えて
IE 6 の割合が減るなら,mod_charset_lite 利用による負荷は時間が解決してくれる
はずってことで,あえて複雑なことをするまでもないかな,って気もします.
フィルタ通すことによる負荷なら,上の方でも言ってますが mod_deflate による
gzip 圧縮の方がよほど重いんで.

583 :root▲ ★ :2006/08/15(火) 02:25:05 ID:???0 BE:1824645-PLT(15700)
>>582に同意ですね。
IE6 は「長いもの」なので、特別扱いでもまぁしょうがないのかなと。

584 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 06:59:20 ID:i2D78TlA0
長いものに巻かれるというか、長いものに振り回されてる感じ

585 :ひろゆき@どうやら管理人 ★ :2006/08/15(火) 07:01:25 ID:???0 BE:132473-DIA(30604)
んでは、IE6のをdat-utf8にしてみるってことで、
あと解決しなきゃいけない問題ってどんなのでしょう?


586 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 09:04:39 ID:i2D78TlA0
「書き込みました」の画面に書き込んだ投稿の内容を埋めておけば、
書き込み後にdatを再取得する手間が省けるかなあ。

でも、同時に複数書き込みがあったとき(1000ゲットなど)にレス番号表示がおかしくなるかも。

587 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 09:38:33 ID:VQ0W/EIL0
結局datから必要な部分を切り出してUTF-8に変換するCGIを用意するだけに
落ち着きそうな気もしてきた。

588 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 09:44:42 ID:9b41f8lUP
巨大AA貼りつけスレを見ると30秒くらいCPUフル稼働する…
Opera9(Win)

589 :root▲ ★ :2006/08/15(火) 11:15:19 ID:???0 BE:547823-PLT(15700)
さて、ぼちぼち dso サーバの bbs.cgi が吐くリンクを
read.html にしてみようかなと思うわけですが、
単に、

read.cgi/板名/キー/引数

を、

read.html#板名/キー/引数

に変換すればいいのかしら。

590 : 株価【750】◆cZfSunOs.U :2006/08/15(火) 11:52:02 ID:ojmXh8q60
>>585あとは,細かい改良の積み重ねって感じでしょうか......


>>589subback.html の URL の変更はちょっと大変かも......現状では

<base href="http://dso.2ch.net/test/read.cgi/myanmar/">
<a href="1111111111/l50">...</a>

のようになってますが,これを

<base href="http://dso.2ch.net/test/read.html#myanmar/">
<a href="1111111111/l50">...</a>

にしてもダメで(base に # を含む URL を指定してもナンセンスで,
この場合 "http://dso.2ch.net/test/"として扱われてしまう),

<base href="http://dso.2ch.net/test/">
<a href="read.html#myanmar/1111111111/l50">...</a>

のようにしなければなりませんが,こうなると subback.html がデカくなりそうです......

さらに,上の方でも言いましたが,subback.html 中のリンク自体を location.hash 形式にすると
read.html 非対応ブラウザを従来版 read.cgi に直接リダイレクトさせるのも不可能になってしまいます.
逆に read.cgi/...... から read.html#...... へリダイレクトさせるのは可能ですが,
リダイレクトによる HTTP リクエストを削減させるとすれば,302 Found の代わりに
301 Moved Permanently を返せばいいのかな(ただ,301 を返すようにするのは
URL の仕様がちゃんと固まってからの方がいいでしょうけど).

591 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 13:05:38 ID:i2D78TlA0
IEで未読と既読の区別がつかなくなるという問題も。

592 :root▲ ★ :2006/08/15(火) 13:29:16 ID:???0 BE:2554447-PLT(15700)
>>590
ふむふむ。

subback.html が大きくなるのは、ある程度は仕方がないと割り切れるのかな。
何といっても、read.cgi の起動回数が大幅に減るわけで。

> 逆に read.cgi/...... から read.html#...... へリダイレクトさせるのは可能ですが,

これは、read.cgi が一度は起動してしまうのかしら。
dso だから、それでもかなりいいかんじですけど。

>>591
それはあるですね。

593 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 13:32:04 ID:qeiAdM0E0
subbackのリンクは標準では従来通りにして、JavaScriptで
(onclickとかonloadを見張って)差し替えたらどうですか?
どうせJavaScriptが有効でないとread.htmlは使えないんだし
>>591の問題も解決する。

594 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 13:54:23 ID:qeiAdM0E0
具体的にはこんな感じのをsubback.htmlのヘッダに突っ込むだけ
<script type="text/javascript"><!--
document.onclick = function(e) {
var t = window.event ? event.srcElement : e.target;
if (t && t.href) {
window.open(t.href.replace(/read.cgi\//, 'read.html#'), t.href.target);
return false;
}
}
--></script>

595 :root▲ ★ :2006/08/15(火) 13:54:27 ID:???0
>>593
面白いかも。

…でも、具体的にはどんな subback を生成すればいいのかしら。

596 :root▲ ★ :2006/08/15(火) 13:55:04 ID:???0
>>594
おー、かぶりました。

subback の頭に入れればいいのかしら。

597 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 13:58:25 ID:qeiAdM0E0
>>596
yes. <head>〜</head>の間のどこかです。
手元ではとりあえずIEとFirefoxで動いてるみたいです。

598 :root▲ ★ :2006/08/15(火) 14:04:26 ID:???0
subback.html はこれでやってみるとして、
index.html は、どんなかんじになるのかしら。同じでいいのかな。

599 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:08:05 ID:qeiAdM0E0
>>598
試してみましたけどindex.htmlの場合は
<a href="#1">
のリンクを踏んだときの動作が微妙ですね。ちょっと改良が必要かも。

600 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:11:18 ID:qeiAdM0E0
ってことで改良版。
<script type="text/javascript"><!--
document.onclick = function(e) {
var t = window.event ? event.srcElement : e.target;
if (t && t.href) {
t.href = t.href.replace(/read.cgi\//, 'read.html#');
}
}
--></script>

601 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:13:01 ID:qeiAdM0E0
subback.htmlも>>600のほうがいいです。

602 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:14:37 ID:qeiAdM0E0
あ、すみません。最後の行は
//--></script>
にしてください(先頭に // を入れる)。

603 :root▲ ★ :2006/08/15(火) 14:14:46 ID:???0
どもです。

同じものを両方に入れればいい(サブルーチン一つ書けばいい)のかしら。

604 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:15:42 ID:qeiAdM0E0
>>603
はい。細かいところはお任せします。

605 :root▲ ★ :2006/08/15(火) 14:32:20 ID:???0 BE:2919348-PLT(15700)
dso に入れてみた。< bbs.cgi

で、
#RewriteRule /?read\.cgi(?:/(.*))?$ /test/read.html#$1 [R,NE]

を、コメントアウトした。

606 :root▲ ★ :2006/08/15(火) 14:35:58 ID:???0 BE:2554447-PLT(15700)
ランタイムエラーが出るみたい。ううむ。

607 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:36:34 ID:qeiAdM0E0
>>605
/read.cgi\//
の \ が抜けて
/read.cgi//
になってるので、正常に動いていないようです。

608 :root▲ ★ :2006/08/15(火) 14:37:39 ID:???0 BE:3283766-PLT(15700)
ここかな。

t.href.replace(/read.cgi//, 'read.html#');

609 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:38:54 ID:qeiAdM0E0
""で囲んでるなら\も二重にしないと。

610 :root▲ ★ :2006/08/15(火) 14:39:35 ID:???0 BE:2463539-PLT(15700)
>>607
\\ にしてみた。< bbs.cgi

どうかな。

611 :root▲ ★ :2006/08/15(火) 14:40:58 ID:???0 BE:5745997-PLT(15700)
いい感じみたいですね。
リンク押しても紫にならないけど(それはしょうがないか)。

612 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:42:49 ID:qeiAdM0E0
Firefoxではうまくいってる予感

613 :root▲ ★ :2006/08/15(火) 14:46:45 ID:???0 BE:2736465-PLT(15700)
Sleipnir (IE6 エンジン)では、うまくいっているみたいです。

これ、いいすね。
で、JavaScript なしバージョンだと、普通に read.cgi ですか。

read.cgi を read.cgi という名前で*も*、有効にしてきます。
SunOS さんが read.so のところを read.cgi にしたら、
read.so はなしにします。

614 :root▲ ★ :2006/08/15(火) 14:48:54 ID:???0 BE:1641492-PLT(15700)
>>613
これで、普通に read.cgi は read.cgi として起動するようになった。

615 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:49:46 ID:D0hTYs/40
未読既読はスレにはられるやつにも影響あるなあ...

IEが落ちる
フリーズしたようになる(>>576)
戻るがおかしい
は直して欲しいな。

616 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:55:54 ID:D0hTYs/40
read.htmlでも>>600いれればいいのかな

617 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 14:57:11 ID:qeiAdM0E0
read.htmlに組み込むのはSunOSさんにお任せってことで。

618 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 16:38:33 ID:YoisifmF0 BE:318329077-2BP(112)
いやあ、近未来的だなぁ とか言ってみる
Ajax版P2 みたいなものを期待

619 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 18:40:01 ID:D0hTYs/40
>>600だと既読になるのは#のほうだから未読既読は解決しないのか。
あとIEだとコンテキストメニューから開くとonclickが呼ばれない。

620 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 18:42:09 ID:D0hTYs/40
あとimu.nuとかでもあったけど、
条件を厳しくしないと誤爆するね。

621 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 19:24:07 ID:i2D78TlA0
ime.nuみたいなリダイレクト専用サーバーを立ててそこにリンクを張るとか。
(クリックさせないで一瞬で飛ばす)


で、そのサーバーがこけるたびに大混乱

622 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 23:36:19 ID:qeiAdM0E0
IEの右クリックと誤爆対策。
<script type="text/javascript"><!--
document.onmousedown = function(e) {
var t = window.event ? event.srcElement : e.target;
if (t && t.href) {
var h = t.hostname;
if (h && h.length > 8 && h.substring(h.length - 8) == '.2ch.net') {
t.href = t.href.replace(/read.cgi\//, 'read.html#');
}
}
}
//--></script>
bbspinkへの対応は、15日になったしいらないよね? とか言ってみる。

623 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 23:46:19 ID:Vjx6htrB0
ずーっと気になってし、言いだしっぺも自覚してると思うんだけど
read.html見たいな動的ページって検索エンジンに拾って貰えない気がするんだ。
そのへんはおkなの?
read.cgiが生きてる限り大丈夫だけど、ページランクは下がるだろうし。

624 :動け動けウゴウゴ2ちゃんねる :2006/08/15(火) 23:50:42 ID:GkMQ9KNq0
ネイバーに限らず、クローリング自体での負荷の上昇も嫌ってるのでそこは問題ないはず。

625 :root▲ ★ :2006/08/15(火) 23:59:54 ID:???0 BE:2736656-PLT(15700)
>>623
read.cgi を殺す気は(私は今のところ)ないですね。

>>622
bbspink.com も対応できるようにしておいていただけると、
とてもよいかなと。

というか >>622により、どうなるんでしたっけ。
素人質問でごめんなさい。

626 : 株価【760】◆cZfSunOs.U :2006/08/16(水) 00:09:32 ID:/guPVXYD0
IE 6 だけ dat-utf8,それ以外 datx にしますた.
プログレッシブな表示ってのも入れたつもり.
戻るについては,>>337-341あたりと同じような問題があって......

read.cgi/... のリンクを read.html#... に変換するのも入れますた.
>>600のはおもしろそうだけど,>>619のコンテキストメニュー問題と
あとステータスバーに出るURL がクリックするまで変わらないっていう問題も
対応するとこんな感じかな.

    for (var i = 0; i < document.links.length; i++)
        if (/^http:\/\/(?:\w+\.)?(?:2ch\.net|bbspink\.com)\/test\/read\.cgi\/?/.test(document.links[i].href)) {
            var isEqual = document.links[i].href == document.links[i].firstChild.data;
            document.links[i].href = document.links[i].href.replace(/read\.cgi(\/)?/, function(s, slash) { return "read.html" + (slash ? "#" : ""); });
            if (isEqual)
                document.links[i].firstChild.data = document.links[i].href;
        }

あと,subback.html や index.html のは,実用化段階では JavaScript 有効でも
read.html 対象外のブラウザは従来通りの URL ってことにしなきゃですね.

627 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 00:11:57 ID:h/ciZhm70
DOMでぴゃーっと書き換えちゃうコード入れときゃおkじゃね?

628 :root▲ ★ :2006/08/16(水) 00:13:43 ID:???0 BE:2918584-PLT(15700)
>>626
おつです。

index.html や subback.html に仕込むのも、それにしたほうがいいのかしら。

で、>>626の最後の2行をうまく実装する必要があると。

629 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 01:07:31 ID:E7jjTUzM0
いくつかの問題を解決するのが難しいなら
普通のread.cgiを使うかどうかをCookieに保存できればいいなあ

630 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 01:13:39 ID:LnZ4IU4t0
>>623
JavaScriptで置き換える方法だと検索エンジンから見たソースは今まで通り
なので問題なし

631 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 01:14:40 ID:LnZ4IU4t0
>>628
> index.html や subback.html に仕込むのも、それにしたほうがいいのかしら。
SunOSさんの書いたものの方がおすすめ

632 : 株価【760】◆cZfSunOs.U :2006/08/16(水) 01:25:53 ID:/guPVXYD0
あぁ,>>626のは subback.html では

onload = function(e) {
   :
};

で挟む形で.ただ,index.html の方はそのままだと index.js と衝突するのと,
さらに <font> タグをやめた S★ の装飾とかを JavaScript でやるなら
be.js もインクルードするってことで,そのあたりとの兼ね合いもあるかな......


>>629単純に JavaScript を切れば従来版 read.cgi にジャンプするのでは?
名前欄とかはブラウザのフォームコンプリート機能を使うとかで......

633 :root▲ ★ :2006/08/16(水) 01:42:09 ID:???0 BE:4925669-PLT(15700)
>>632
なるほど、index.html でうまく動かないのは、そういうことですか。

とりあえず、ちと食事。

634 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 01:46:20 ID:E7jjTUzM0
過去ログ鯖とかは変換しないほうがいいような

>>632
JavaScript有効時の話

635 : 株価【760】◆cZfSunOs.U :2006/08/16(水) 01:52:59 ID:/guPVXYD0
>>634>>626の逆をやる bookmarklet を登録しておくとか.

636 :root▲ ★ :2006/08/16(水) 01:54:49 ID:???0 BE:3283294-PLT(15700)
とりあえず、index.html はさっきまでのものに戻しておきます。

637 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 02:02:40 ID:E7jjTUzM0
>>635
index.htmlとかsubback.htmlでだけど、
「問題を解決するのが難しいなら」書き換えるかどうかの選択肢がほしい

638 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 02:09:35 ID:E7jjTUzM0
で、外から飛んできたときはどうするのがいいんだろう?

639 : 株価【760】◆cZfSunOs.U :2006/08/16(水) 02:18:09 ID:/guPVXYD0
>>637バックボタンとかその辺ですか? これはブラウザの仕様とかの
兼ね合いもあるんですが...... いっそ別窓で開かせればすっきりするのかなぁ......
あるいは,外側の html のキャッシュ問題(ひいては鯖の負荷問題)を無視して
PATH_INFO 形式をデフォルトにするか......


>>638
RewriteCond %{HTTP_USER_AGENT} ほげほげ
RewriteRule /?read\.cgi(?:/(.*))?$ /test/read.html#$1 [R=permanent,NE]

でもこれなら,subback.html とかの JavaScript もいらないことになるのか......

# 実際 permanent にしちゃうのは >>590ってことで.

640 :動け動けウゴウゴ2ちゃんねる :2006/08/16(水) 02:41:17 ID:LnZ4IU4t0
>>639
そもそも>>590とか>>623の問題を解決するためのJavaScript案なんだから
両取りは無理では

317KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30