Found a nice little bug when I went to view the City of Cedar Rapids home website using my Chrome browser. When I first encountered this issue, I thought that everything was just condensed so small that I couldn’t read it. After I got fed up with continually having to switch to IE tab I realized that the issue was something a little different. Once I scrolled all the way down to the bottom, I was able to get to the content that I desired. It appears that the menu system that is implemented on the page is causing a weird effect that breaks everything. It is much easier to show you a picture of what I encounter.

I have to scroll all the way down?

What are the solutions to this problem?

  1. Don’t Use Chrome
  2. Use Chrome Extension
  3. Fix The Problem

1) The easy solution is to not use Google Chrome. With that said, I think we all have a unique attachment to our browser of choice. Some really like Firefox, Opera, Safari, or even Internet Explorer. I like Chrome. I like having my bookmarks sync from my home computer to my work computer. I like the extension system they have built. I also like the speed at which new tabs open as well as the speed in which Chrome opens. While other browsers do compare nicely in this fashion, I simply prefer Chrome.

Whats also interesting in the browser market share, is that the popularity of Chrome is rising. As noted by HitsLink.com, the total market share for the Chrome browser is 5.61%. This is up from 2.84% from August of 2009, which is only 6 months prior. Chrome is making HUGE strides in its development and I see it continuing to grow once they release the ChromeOS into more tablets and systems. Here is a report of which browsers currently hold a nice hold on market shares for February 2009.

On top of all of this, European users are not tied to Internet Explorer once they get new computers anymore. The European Commission mandated that operating systems give users a choice to which browser to install once they are ready to browse the web. This ensures that people have to make a conscious decision on what they want to use. Some may be more apt to choose something new to find out  if they like something different. Could this also make its way to the United States? Possibly. Are websites ready to support multiple browsers? Most are. The Cedar Rapids website, sadly, does not.

2) I also know that there is an IE tab extension that fixes this issue for me by imitating a Chrome tab as an Internet Explorer session. I also know that I can whitelist the “cedar-rapids.org” domain to always use the IE tab if I try to open it. This is the current solution that I’m using but its more of a temporary fix to an issue that should work natively. Chrome uses W3C standards when displaying content. If there are any websites that are not properly showing up in Chrome, it was probably because the original developers of the website code only ensured that it worked in their personal web browser. Is the W3C standard adopted by all developers? Heck no, but I wouldn’t say that if it works in IE that its a good enough standard to adhere to. At least Google Chrome follows a standard thats not its own.

3) Finally, we could do what I believe is the right thing to do. Fix it.

I went ahead and copied the web code and all the javascripts trying to track down exactly where the problem was. I didn’t know how the website created its content and was hopeful I could pinpoint where the issue was occurring. It only took a couple minutes to track down the problem to the apymenu.js file. I guess the website uses a 3rd party menu system on the left side pane. I actually giggled a bit when I visited the homepage for apycom.com, which is the home site for this particular vendor.

“Full cross-browser compatibility“. Ha!  I can tell you that its not compatible with Chrome! In their defense, I don’t know if they have released updates to the code that fixes this particular issue. Regardless, I found that a bit humorous.

After I did a quick search, I found that cedar-rapids.org is not the only site that uses this particular menu system thats having this issue. No shock there. However, someone was diligent enough to find the part that breaks it for Chorme and provide a quick update. Here is the link that I used to resolve the issue when I was testing it.

After I found the issue and tested the fix I sent an email to the contact address for the webmaster of Cedar Rapids on February 26th, 2010. It reads as follows:

Hello,
I’d like to point out a glitch in the apymenu.js script that resides on the main “cedar-rapids.org” website for viewing in the Chrome web browser. When I enter the main website for Cedar Rapids I get what you see in the attached image. It can also be seen in the example provided in the example attached to the link below.
Link To Google Chome Fix
Its really a pain in the bumbum to have to switch to use an IE tab plugin for Chrome or switch over to a Firefox/IE solution to view this data. Considering the fix for this is extremely easy, I was hoping a web developer could take a couple minutes out of there day to help fix the glitch?
For easy reference of the fix inside of the file apymenu.js:
var I111a = (parseInt(navigator.productSub) >= 20020000) && (navigator.vendor.indexOf(“Apple Computer”) != -1),
IIlII = I111a && (navigator.product == “Gecko”);
needs to be changed to…
var II1a = (parseInt(navigator.productSub) >= 20020000) &&
((navigator.vendor.indexOf(“Apple Computer”) != -1) ||
(navigator.vendor.indexOf(“Google”) != -1)),
IIIlI = II1a && (navigator.product == “Gecko”);
I’ve thrown up a local test of the above code changes, and it works like a charm. No more going to alternative browsers to view the main CR website!
Thank you!
You’re friendly anal retentive web guy
Paul Nus

So, here we are now. Six days later and I’ve yet to hear a peep from anyone regarding this matter. Trivial? Probably. Easy fix? Yes! More to come…

*EDIT

I came in contact with former co-worker who now works for Cedar Rapids city government. He indicated that the city may be moving to a new website in the future and it may not get the attention it deserves. On top of that, there is supposedly only one employee that manages those type of updates. Take that information for what its worth. Is it so hard to just get a reply in todays world? Come on!