A current project extending Visio’s Save As Web functionality threw up an interesting problem today. If you’re using the User.visEquivTitle solution to provide an alternative tooltip then you need to make sure that the cell’s value is a string with a length greater than zero…
Shape Tooltips
By default Visio’s Save As Web functionality produces shape tooltips based on the shape’s text, however, adding a User cell (User.visEquivTitle) enables you to display any text of your choosing. Usually you would point the User cell to the Comment cell so that you get the same behaviour in the web output as you do when using Visio itself, but you’re free to direct the cell anywhere you like, including Shape Data cells.
Symptoms
The symptoms of the problem I came across today was that a shape that I knew to contain multiple hyperlinks was failing to display them (or at least any tooltip) on mouseover. Looking at the underlying VML none of the shape elements contained any of the usual onmouseover or onclick event handlers and it became clear that something in the original shape was preventing Visio from generating the correct markup.
Solution
After a lot of removals of possible culprits it turned out that the User.visEquivTitle cell was pointing at a Shape Data cell with a zero length string, and that this was the root of the problem. It appears that as long as visEquivTitle finds at least one character (and that includes a space) then it’s happy and now, so am I.