- PR -

企業におけるIE7の動作検証

投稿者投稿内容
えんぞ@?
ぬし
会議室デビュー日: 2004/07/06
投稿数: 271
お住まい・勤務地: はまっこ
投稿日時: 2006-03-09 10:13
IE7の動作検証って、どうなんでしょう?
現在、BETA2 Previewが出ていますが、タブ機能は便利ではあるものの厄介のような気がします。
今までは、Webアプリ の動作環境は「IE6 SP1 推奨」とし、他の(タブ機能付き)ブラウザでは動作保障外なんてしている企業も多々あるかと思います。
ではなぜタブ機能が厄介かというと、「複数タブにて同一サイトを開いた場合、Cookie (Session) は同一のものを使用してしまう」という点です。
(細かく検証はしていないので...間違ってないですよね...?)

例えば、月報入力画面があるとします。
2つのタブを開き、片方では前月の月報を参照し、もう片方では当月の月報をエントリー(入力)するパターン。
Cookie や Session、QueryString、Stateサーバ 等に表示「月」を保持している場合、当月をエントリーしたはずが実は前月として登録されてしまったなんて...ことも。
(あまりよい例えではないですが、イメージとして)

タブブラウザ、便利だけれども厄介。
さて、既存の Web アプリケーションをどう対処したもんか...
せん
ぬし
会議室デビュー日: 2002/03/04
投稿数: 397
投稿日時: 2006-03-09 10:34
たとえが悪い、といっている所につっこんですいません。

そのたとえ、タブブラウザに限らず、複数ウィンドウを開くと
ダメになるシステムってことじゃありません?
べつだん、タブブラウザだから、という事ではないとおもいます。

そんなタコな設計をやめれば良いだけの話ではありませんかね。
cedman
会議室デビュー日: 2004/06/21
投稿数: 13
投稿日時: 2006-03-09 11:01
業務アプリだと画面に多数の部品を見栄えよく配置するために
1px単位でレイアウトを調整したりすることが多いかと思いますが、
ブラウザのレンダリング方法が変わることによりレイアウトが総崩れになりそうで怖いですね。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-03-09 11:14
引用:

cedmanさんの書き込み (2006-03-09 11:01) より:

業務アプリだと画面に多数の部品を見栄えよく配置するために
1px単位でレイアウトを調整したりすることが多いかと思いますが、
ブラウザのレンダリング方法が変わることによりレイアウトが総崩れになりそうで怖いですね。


私は em などの (広義の) 相対指定しか使いませんけど、
(広義の) 絶対指定の方が一般的なんですか? (^-^;)

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
えんぞ@?
ぬし
会議室デビュー日: 2004/07/06
投稿数: 271
お住まい・勤務地: はまっこ
投稿日時: 2006-03-09 11:20
やはり例えがまずかったですかね。

ちょっと例えを変えて、ショッピングサイト。
 1.ユーザログイン画面
 2.商品一覧画面
 3.商品詳細画面
 4.カート一覧確認画面
 5.商品発送確定画面
とあるとします。
各画面間の持ち回り情報は、大抵 Cookie へ保持するか、Sessionへ保持、又は SessionID を元にDBへ一時格納してるかと思います。
 A) 1つ目のタブでは4つの商品をカートに入れてあり、「5.商品発送確定画面」にて確定直前とします。
 B) 2つ目のタブを開き、「3.商品詳細画面」にてカートへ1つ商品を追加します。
1つ目のタブに戻り、確定ボタンを押すと...、A) で確定する前では4つのはずの商品が、確定された後では5つになってしまいます。
そんな操作を行うユーザがアカン!言うたらそれまでですが、とはいえやはり何をしでかすか解らんのがユーザ。便利な機能が付いたら、使いたがるのがユーザ。
(これまた、例えが悪かったらすんません)
結構、画面間情報の持ち回りで複数タブ開いたら変な挙動になる Webアプリ はかなりあると思いますが如何でしょう?

画面間の持ち回り情報は、一般的にCookieやSessionに格納するのが一般的かと思いますが違う、もしくは他に手法があるのでしょうか?
(QueryStringだと格納できる情報に限りがあるので外しました。Cookieにも限りはあるけど...)
引用:

せんさんの書き込み (2006-03-09 10:34) より:

そんなタコな設計をやめれば良いだけの話ではありませんかね。


もしよろしければ、その手法をお教え願えないでしょうか。

私が思いつく限りでは、ASP.Net であれば「ServerTransferのプロパティにて画面間の値を受け渡し」+「ViewStateへ格納」というのが浮かびますが、若干の欠点(アドレスがずれたりなど)あり。
既に運用されているレガシーASPなどの対応はこれといった案は浮かばないですね。
えんぞ@?
ぬし
会議室デビュー日: 2004/07/06
投稿数: 271
お住まい・勤務地: はまっこ
投稿日時: 2006-03-09 11:33
引用:

じゃんぬねっとさんの書き込み (2006-03-09 11:14) より:

私は em などの (広義の) 相対指定しか使いませんけど、
(広義の) 絶対指定の方が一般的なんですか? (^-^


私のところでは px 単位が大半をしめています...orz
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-03-09 11:57
引用:

えんぞ@?さんの書き込み (2006-03-09 11:33) より:

私のところでは px 単位が大半をしめています...orz


IE7 とは言わず、「文字のサイズ」を変更しただけで崩れることがしばしばですね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2006-03-09 12:07
引用:

えんぞ@?さんの書き込み (2006-03-09 11:20) より:
やはり例えがまずかったですかね。

ちょっと例えを変えて、ショッピングサイト。
 1.ユーザログイン画面
 2.商品一覧画面
 3.商品詳細画面
 4.カート一覧確認画面
 5.商品発送確定画面
とあるとします。


確認したいことがあります。
1.「タブ」を「新しいウィンドウ」に読み替えれば、同じ事だと思うんですが、
  どこがどう違うんでしょう。
2.上記のような複数の画面を持つショッピングサイトを構築する場合、
  えんぞ@?様はどのように実装されているのでしょうか。

[ メッセージ編集済み 編集者: Edosson 編集日時 2006-03-09 12:29 ]

スキルアップ/キャリアアップ(JOB@IT)