我正在为最好的方法寻找一些建议。
基本上我有一些 javascript 来检测用户是否在移动设备上,如果他们加载了一个 css 文件,一个移动类被添加到页面的主体,并且一个隐藏字段被赋予一个移动值。然后我检查这个隐藏字段的值,这样我就可以运行特定于移动设备的方法。
目前我的一切都按要求工作,但我被迫在第一页加载时进行 javascript 回发,以便可以从后面的代码访问隐藏字段的值。我只是想知道是否有更好的方法来做到这一点?
这是我的一些代码。
if ( navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i)) {
$("body").addClass("mobile");
$('head').append('<link rel="stylesheet" href="Styles/mobile.css" type="text/css" />');
$('head').append('<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0;">');
if ($("#hfdevice").val() != "mobile")
{
$("#hfdevice").val("mobile");
__doPostBack('hfdevice','');
}
}
.
HiddenField hfdevice = (HiddenField)Master.FindControl("hfdevice");
if (hfdevice.Value == "mobile")
{
Do Stuff
}