LOGIN ID Password Auto Login Register Now! Lost Password?
XUGJ Forum

ブラウザ判定の変数を設定して、if文で切り分けたいのですが。

投稿ツリー


このトピックの投稿一覧へ

hasuo

通常 ブラウザ判定の変数を設定して、if文で切り分けたいのですが。

msg# 1
depth:
0
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2014/8/19 1:18
hasuo  2nd Class   投稿数: 29
みなさん、いつもお世話になっています。
XOOPS Cube Legacy 2.2.3 Beta 1 を利用している者です。

ブラウザの判別をする変数を、テンプレート内で宣言して、if文でブラウザにあわせた処理ができるように出来ないかと考えています。
調べてみたところ、当サイトに下記の記述がありました。
Smarty小ネタ

また、下記の HP も参考にしました。
JavaScriptを使って、どのブラウザかを判定するあれこれ

この二つを参考に、下記のようなコードをテンプレート内に書いてみたのですが上手く行きません。
var userAgent = window.navigator.userAgent.toLowerCase();

<{if (userAgent.indexOf('msie') != -1) }>
    //IE全般
<{elseif (userAgent.indexOf('chrome') != -1) }>
    //Chrome
<{elseif (userAgent.indexOf('opera') != -1) }>
    //Opera
<{else}
    // その他ブラウザ時の処理
<{/if}>

この上記のコードをテンプレートに追記して、更新して編集終了を行い、ページを表示すると下記のエラーメッセージが出ます。
Smarty error: [in db:*******.html line **]: syntax error: unidentified token '.indexOf('msie')' (Smarty_Compiler.class.php, line 1410)This page cannot be displayed due to an internal error.

indexOf('msie')'が悪いと言っているようですが、ここからどう対処してよいのか、お手上げ状態です。
変数の宣言方法を
<{$*****}> のようにするべきなのでしょうが、そうすると今度はどのように値を代入すればよいのかわかりません。
そもそも、userAgent を使っている事に無理があるのでしょうか?

どなたか、xoops テンプレート内でブラウザ判定用の変数の取得方法と、その変数にてif文を利用する方法をご存知の方、いらっしゃいましたらお教え願いますでしょうか?
投票数:0 平均点:0.00

  条件検索へ


Back to Page Top
MainMenu
Manuals
Search
XOOPS Official & Dev.
XOOPS Communities