Home > 技術 > display:noneな画像はOperaでPostされない

display:noneな画像はOperaでPostされない

イメージタグを使ってなんらかのWebサービスに値をPostしたい場合に、そのElementがdisplay:noneだとなぜかOperaだけPostされなかったです。
あんまりdisplay:noneにしなきゃいけないシチュエーションは少ないかもしれませんが、これもまたブラウザの仕様なんですかね。

サンプルHTMLはこんな感じです。

以下Postされるかされないかの一覧です。

IE6.0
Postされる
IE7.0
Postされる
Netscape7.1
Postされる
Safari3.1
Postされる
Firefox3.0
Postされる
Opera9.25
Postされない

ただOperaのバージョンが9.25なので、最新の9.5でどうなっているかは試していませんw

■追記
コメント欄にて教えていただきました。

どうやら9.5から改良が入り読み込むみたいです。

まず前提として、Operaではdisplay:noneな画像(直接指定されていなくても、親のdisplay:noneを継承していれば)は読み込みをしない(リクエストが発生しない)という特徴があります(おそらく表示の高速化のためでしょう)。そのため、以前のバージョンではonloadイベントが発生することもありませんでした。


対して、Opera9.5ではimgにonloadが記述されている場合はdisplayに関わらず読み込みを行うように修正されました。


via: Opera9.2から9.5でのJavaScript周りの変更点 - 0x集積蔵

【関連する記事】

Comments:3

edvakf 2008-07-28 (月) 23:36

あまり詳しいことは知りませんが、Operaではdisplay:noneな画像はsrcを読み込まないはずです。width="0" height="0"ならどうでしょうか?

edvakf 2008-07-29 (火) 00:54

http://d.hatena.ne.jp/os0x/20080728/opera95
こちらの「display:none の指定された画像についても onload が機能」という項目に詳しいです。
前のコメントは忘れてください。すみません。

hisasann 2008-07-29 (火) 15:35

edvakfさん。コメントありがとうございます。
なるほど、src読みこまないんですね。

参考のURL拝見させていただきました。
9.5から改良が入ったなんて・・・

というかedvakfさんのブログかなりなOperaマスターですなw

Comment Form

コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。

Remember personal info

Trackback:0

TrackBack URL for this entry
http://hisasann.com/cgi-bin/mt/mt-tb.cgi/1077
Listed below are links to weblogs that reference
display:noneな画像はOperaでPostされない from HouseTect, JavaScripter Blog

Home > 技術 > display:noneな画像はOperaでPostされない

Tag cloud
Categories
月別アーカイブ
このブログについて
author:hisasann

description:フリーランスで仕事しているプログラマーです。
最近はJavaScript、Rails、Java(Struts+Spring)なんかをいろいろといじっています。
今やってみたいのはFlashやActionScriptかな。
また誕生して半年になる子供の成長を見守るパパでもあります。

日々の日記 :

他に運営しているブログ:

利用しているWebサービス :
最近のコメント
hisasann on display:noneな画像はOperaでPostされない: edvakfさん。コ

edvakf on display:noneな画像はOperaでPostされない: http://d.h

edvakf on display:noneな画像はOperaでPostされない: あまり詳しいことは知

Powered by
Powered by
Movable Type 3.35

Page Top