LQ Javascript menus not working non-Gecko browsers
LQ Suggestions & FeedbackDo you have a suggestion for this site or an idea that will make the site better? This forum is for you.
PLEASE READ THIS FORUM - Information and status updates will also be posted here.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Distribution: approximately NixOS (http://nixos.org)
Posts: 1,900
Rep:
LQ Javascript menus not working non-Gecko browsers
I use some obscure WebKit-based browser (uzbl) as my primary browser. I noted that JS menus (like Thread Tools) don't work correctly with it. More specifically, all webkit-based browsers and wine-run IE6 complain about undefined reference _gat.
And without JS the Thread Tools do not work at all (they used to work OK). That means that not only Midori users are locked out of part of fuctionality, but the users who are caught in the middle of X server configuration can't comfortably use ELinks/Lynx/Links in a spare console to search (forum-local search menu is also broken without JS) for the recommendations, which seems somewhat wrong.
If there is a way to fix it without big effort (maybe board engine just needs to be updated/reconfigured), I would be grateful if it got fixed.
Distribution: Debian, Red Hat, Slackware, Fedora, Ubuntu
Posts: 13,602
Rep:
All JS items (including Thread Tools) degrade gracefully if Javascript isn't detected. If there's a case where it's detected but the implementation is broken, I'm not sure there's much we can do.
Distribution: approximately NixOS (http://nixos.org)
Posts: 1,900
Original Poster
Rep:
There is a lot that can be done.. I investigated a bit.
Problem 1.
JS items do not simply detect JS. JS items do not detect JS and AJAX. They detect JS and user-agent deemed to be compatible. So ELinks, Lynx and Uzbl get no-JS version of thread tools. Yes, adding "Gecko compatible" to useragent helps, but is it really a good idea to require this?
Problem 2.
You set <base href=> in <head>. This causes a problem with href="#threadtools" link. RFC explains that this is a link to fragment called #threadtools in the document at the base URL. Firefox behaves in another way, and works fine, but it seems to be in violation of RFC. So the current behavior relies on RFC violaion by the browser.
Distribution: approximately NixOS (http://nixos.org)
Posts: 1,900
Original Poster
Rep:
I change browser identification string. Functionality changes. Nowadays you can never be sure what useragent string really means. On the one hand, there are numerous UIs around rendering engines, and these useragent strings may be unrecognized. On the other hand, sometimes browsers actively lie to match a known useragent filter. I guess ignoring useragent string altogether would be better.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.