[英]adding mobile browser detection, rule selection, into a ruleset
我想向一個規則集添加功能,該規則集根據瀏覽器是否可移動來觸發不同的規則。 (一個規則適用於標准瀏覽器,不同的規則適用於移動瀏覽器)我知道瀏覽器檢測可以通過多種方式完成,但我的第一個傾向是使用javascript。
關於如何從此開始有什么想法?
您可以使用useragent
對象 ,如下所示:
rule detect_agent {
select when pageview ".*"
pre {
browser_name = useragent:browser_name();
browser_version = useragent:browser_version();
os = useragent:os();
os_type = useragent:os_type();
os_version = useragent:os_version();
full_useragent = useragent:string();
message = <<
<p><strong>Information about your browser:</strong></br />
<em>Browser name:</em> #{browser_name}</br />
<em>Browser version:</em> #{browser_version}</br />
<em>Operating system:</em> #{os}</br />
<em>OS type:</em> #{os_type}</br />
<em>OS version:</em> #{os_version}</br /></p>
<p>#{full_useragent}</p>
>>;
}
append("body", message);
}
但是,由於browser_name
和os
可能正確或可能不正確,因此您可能必須自己進行一些解析。 這是在Mac上的Chrome中的外觀(您可以在任何瀏覽器中使用此URL對其進行測試):
這是在iPad上的Safari中的外觀:
對您關心的瀏覽器的UserAgent字符串的外觀進行一些研究。 然后,您可以將useragent:string()
函數與match()
一起使用,以確定如何處理它。 (如果您想舉一個例子,請告訴我。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.