Условное заявление для обнаружения iPhone - PullRequest
1 голос
/ 16 декабря 2010

Я пытаюсь отобразить что-то определенно для пользователей iPhone на веб-странице, используя условные выражения (как вы это сделали бы с IE).

<!--#if expr="(${HTTP_USER_AGENT} = /iPhone/)"-->
Hello
<!--#endif -->  

Кажется, это не скрывает себя от не iPhoneпользователи.У кого-нибудь есть предложения?

Ответы [ 2 ]

3 голосов
/ 16 декабря 2010

Использовать обработку JavaScript или обработку на стороне сервера.

.js:

if (navigator.userAgent.indexOf('iPhone') > -1)
    document.getElementById('iphoneMessage').style.visibility = 'visible';  
0 голосов
/ 16 декабря 2010

ОК, я решил эту проблему по совету Коди Грея.

CSS:

<!--#if expr="(${HTTP_USER_AGENT} = /iPhone/)"-->
<style type="text/css">
<!--
.iPhone {visibility:visible;}
-->
</style>
<!--#else -->
<style type="text/css">
<!--
.iPhone {visibility:hidden}
-->
</style>
<!--#endif -->

HTML

<div class="iPhone">
Hi
</div>

* Edit

Я закончил делать это в .net и заполнитель:

Передняя часть:

<asp:PlaceHolder ID="myPlaceHolder" runat="server"> 
hi
</asp:PlaceHolder> 

Код:

 String userAgent;
        userAgent = Request.UserAgent;
        if (userAgent.IndexOf("iphone") > -1)
        {
            myPlaceHolder.Visible = true;
        }
        else
        {
            myPlaceHolder.Visible = false;

        }
    }
...