AutoPagerize is whose feature ?
以下を読んでて思ったことなんだけどここらへん browser だけじゃなくてページ制作者の立場も含めて標準仕様でも作らないとみんなが幸せになれないと思う。
とりあえず browser 側の立場としては上記で議論されてて、 Greasemonkey のような機能で付加するものというよりは browser が標準で提供すべきものという結論が出てる。おれもその通りだと思うんだけどどうもページ制作者の視点がないので片手落ちな気がするんだよな。
というのもそもそも現行の AutoPagerize ってのは次のページをまるまる取ってきてその中からいるところだけ取り出して継ぎ足すっていう仕様なので無駄が多い。大体いま流行のページ構成は header, footer, sidebar がごちゃっとついてるしな。で、結局 browser 側だけでやるというのはこの大枠は取っ払えないわけでやっぱり無駄が多いんじゃねーかなというのがその理由。
ページ制作者側としては最終的に表示されないものに自分の server の resource や回線の帯域を使いたくないというのが本音だと思うんだよね。いやみんながそうだとは思わないけど少なくとも自宅で server たててるとか回線料にまわせる資金がないとかはわりとよく聞くハナシなので。となると「次のページで必要な部分だけ送りたい」となるのがページ制作者側の気持ちで、実際 Ajax での遷移なしデータ切り替えなんてのはその最たる例だと思うんだよね。
てわけで以下のような仕組みを標準化するのがいいんじゃないかなぁと思うんだけどどうかな。
- 1 ページ目を普通に download & 表示
- 2 ページ目を表示する必要に迫られたら browser は server へ request
- server は 2 ページ目に固有の部分のみを送る
- browser 側で付加処理 ( 何らかの関数の hook とか ) を行ったあと継ぎ足し
こうやって考えると HTTP での request / response の拡張とページの切れ目を示す microformat の策定で何とかなりそう ? いやでも HTTP レベルで文書構造を考慮した通信を行うのは設計的にダメな気がするな。 HTTP の部分 GET ( http://www.studyinghttp.net/body#Range_Units ) も byte 単位での部分指定だし。
<link rel="nextpage" /> で次のページを指定すればいいんじゃないかと思った。これなら何とかなりそうな気がする。
あとはてブのコメントにそんなに余裕がないページ制作者は header, footer, sidebar なんかをはずして本題の内容のみ提供すればいいんじゃないかっていう趣旨の指摘があったけど、それはあまりに accessibility が低いというのと一般的な UI ではないので閲覧者がひるんでしまうという点からあんまりおいしくなさそう。