Hvordan vise innhold i forhold til mobil eller pc?

Jeg lager en html-app for øyeblikket, men sliter litt med å finne ut hvordan jeg kan vise 1 innhold for de som har mobil og et annet innhold for de som har vanlig nettleser.

Noen som vet?

Noe i denne duren:
if mobile - redirecto to ( http://www.geagag …)

Les deg opp på “responsive design”.

om du skal lage en vanlig side, vil dette bli gjort i css. en for hver, mobile, handheld, osv.

Jeg trenger kun et script som sender besøkende videre til en ny URL om det er mobil. Er det noe som har det?

FYI - Selve appen og resten av funksjonene både for iphone, ipad og andriod fungerer så d suser…

.htaccess

[CODE]
RewriteBase /
RewriteEngine On

# Sjekk om det ser ut til å være en mobil enhet
RewriteCond %{HTTP:x-wap-profile} !^$ [OR]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC,OR]
RewriteCond %{HTTP:Profile}       !^$

# Sjekk om vi allerede er på den mobile siden
RewriteCond %{HTTP_HOST}          !^mobil\.

# Videresend til mobil side
RewriteRule ^ http://mobil.minside.no%{REQUEST_URI} [R,L]

[/CODE]

PHP

[CODE]<?php
$iphone = strpos($_SERVER[‘HTTP_USER_AGENT’],“iPhone”);
$ipad = strpos($_SERVER[‘HTTP_USER_AGENT’],“iPad”);
$android = strpos($_SERVER[‘HTTP_USER_AGENT’],“Android”);
$palmpre = strpos($_SERVER[‘HTTP_USER_AGENT’],“webOS”);
$berry = strpos($_SERVER[‘HTTP_USER_AGENT’],“BlackBerry”);
$ipod = strpos($_SERVER[‘HTTP_USER_AGENT’],“iPod”);

// Sjekk om det ser ut til å være en mobil enhet
if ($iphone || $ipad || $android || $palmpre || $ipod || $berry == true)
{
// Videresend til mobil side
header(‘Location: http://mobil.minside.no/’);
// eller sett det inn i filen
echo “”;
}
?>
[/CODE]

Ruby on Rails

[CODE]class ApplicationController < ActionController::Base
helper :all
protect_from_forgery
layout :detect_browser

private
MOBILE_BROWSERS = [“android”, “ipod”, “opera mini”, “blackberry”, “palm”,“hiptop”,“avantgo”,“plucker”, “xiino”,“blazer”,“elaine”, “windows ce; ppc;”, “windows ce; smartphone;”,“windows ce; iemobile”, “up.browser”,“up.link”,“mmp”,“symbian”,“smartphone”, “midp”,“wap”,“vodafone”,“o2”,“pocket”,“kindle”, “mobile”,“pda”,“psp”,“treo”]

def detect_browser
agent = request.headers[“HTTP_USER_AGENT”].downcase
MOBILE_BROWSERS.each do |m|
return “mobile_application” if agent.match(m)
end
return “application”
end

//inkluderes i siden med:
<%= link_to “MOBIL SIDE”, :controller => “home”, :action => “set_layout”, :mobile => “1” %>
[/CODE]

Javascript

<script type="text/javascript">// <![CDATA[ // Sjekk om det ser ut til å være en mobil enhet var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase())); if (mobile) { // Videresend til mobil side document.location = "http://mobil.minside.no"; } // ]]></script>

.htaccess-måten er å foretrekke :slight_smile:
Kan ikke ruby, men der ser det bra ut også.
Resten inneholder en ekstra gang til serveren.

Responsive design er greit og alt, men det er godt å kombinere dette server-side med noen is_mobile() funksjoner for å unngå å sende elementer til enheten som ikke hører hjemme der (og som kun blir skjult).
Jaja, det e någe med alt..