アプリ版:「スタンプのみでお礼する」機能のリリースについて

xpの時に作ったJavascriptを試してみたんですが、今win7,IE11なんですが、
brws = navigator.appName;
alert(brws) ;
をすると、netscapeと返します。
今はもういろいろと、ソースが変わってしまったのでしょうか?
また新しい本を買って学びなおす必要がありますか?もしまた組むとしたら。

A 回答 (3件)

ブラウザ判定には、主にnavigator.userAgentを参照します。


ieのバージョンで区別するなら、navigator.appVersionも見る必要があります。

html自体も、ブラウザのバージョンも日々変わっているので、
常に学びなおす必要はありますね。
今のご時世、問題さえはっきりしていれば、大抵のことはネットで検索するだけで
情報がでてくるので、敢えて本を買う必要もありません。

他の回答にある通り、jqueryなどのライブラリを使えば、
そういったブラウザごとの違いを意識せずに一定の書き方ができます
(だからそんなのはjqueryでやれ、というのは決めつけすぎな気もしますが)。
今後新しくプログラムを書く機会があれば、検討してみてください。
    • good
    • 0
この回答へのお礼

しばらく組んでなかったもので、
もうだいぶ変わったのかぁと不安になりましたが、
いずれにしてもある程度は新しい知識を入れ続けないといけないようですね。
ご回答ありがとうございました。

お礼日時:2014/05/10 20:21

ブラウザの判定は極力すべきではありません。


どうしてもバグ対策に必要なときだけにしてください。

navigator.appNameは仕様で"Netscape"を返すべきとされています。
これも"Netscape"でないと動かないスクリプトが万栄したからです。

http://www.whatwg.org/specs/web-apps/current-wor …
    • good
    • 0
この回答へのお礼

>仕様で"Netscape"を返すべきとされています

素人なので不思議ですが、そういうものなんですね。
ご回答ありがとうございました。

お礼日時:2014/05/10 20:17

なぜブラウザ判定が必要なのか、補足をお願いします。



それによって動作が違う部分を同一の動作にしたい、という場合ならば jQuery などのライブラリで違いをラップするという方法があります、というか、そういった面倒くさいことをライブラリに任せて本質的な部分を記述するというのが最近の流れです。
したがって、上記以外の理由があればお教えください。

この回答への補足

特に判定は必要ないのですが、あまり詳しくないので、いろいろテストしていたものを再度動かしただけでした。
ご親切にありがとうございました。

補足日時:2014/05/10 20:20
    • good
    • 0
この回答へのお礼

質問は、今はもういろいろと、ソースが変わってしまったのでしょうか?
また新しい本を買って学びなおす必要がありますか?
と言うことでした。
わざわざアドバイスをありがとうございます。
他の過去作はうまく動いてるようなので、変わり内容ですね。
ありがとうございました。

お礼日時:2014/05/10 20:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!