On Sep 6, 10:09 am, pharrington <[email protected]> wrote:
> On Sep 6, 12:51 am, dansinker <[email protected]> wrote:
>
>
>
> > I have a site that's directed toward mobile use. As a result, the
> > basic structure consists of pages that render exclusively on mobile
> > devices, and then corresponding pages for desktop browsers that
> > explain that they need to come back on a mobile device.
>
> > Currently, I'm using Javascript on the mobile page to detect browser
> > width and then it redirects to the desktop page if it's above 480px
> > wide.
>
> > That works fine, but it's less than perfect when people link or
> > bookmark the desktop page, it never redirects back to the mobile one.
> > And, it seems to be less than perfect for search engines as well.
>
> > Here's what I've got now:
>
> > index.rhtml renders first and tosses this Javascript at it:
>
> > {       winWidth=document.all?document.body.clientWidth:window.innerWidth;
> >         if (winWidth > 481)
> >         location="<%= url_for({:controller => 'info', :action =>
> > 'share_welcome', :id => @story, :only_path => false, :protocol =>
> > 'http://'}) %>"
> >         }
>
> > So you can see, it directs browsers over a certain width to, in this
> > case, share_welcome.rhtml
>
> > So, in a desktop browser, the index page looks like mysite.com/
> > share_welcome, while a mobile browser just sees mysite.com
>
> > There's *got* to be a way to route this browser width logic ahead of
> > page load so that it's always mysite.com no matter what, right?
>
> > Is it possible to build this into routes.rb somehow?
>
> > I'm stumped. Any ideas?
>
> > Thanks so much!
>
> > Dan
>
> My browser (Firefox 3.5) does not send browser width-at-the-time
> information in the request headers. I doubt any browsers do, so you
> can't use this in any sort of routes or respond_to shinanagins.
>
> If you need your application to perform differently depending on
> different user agents, you need to relay on the User-Agent header.
> This will of course require some research to find the UA's that your
> app needs to consider as mobile devices, and be ready to respond to
> user feedback when someone browses with a UA you did not anticipate.


Of course, if all that needs to change though is client-side behavior
(pages need to be rendered differently etc), perhaps reasoned and
judicious use of Javascript+CSS is the better approach.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to