Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...house Menu: How to get startedhouse Menu: How to get started
Previous
 
Next
New Post
3/19/2008 11:24 AM
 

keeperofstars wrote

superdmon: If I am not mistaken the difference your seeing is between using the skinobject and using the module. The skinobject has to create unique id's for every element it creates since these elements are part of the physical page. While when using the module the module itself is not actually generating any skinobjects. All it is doing is reading the page structure data and then creating an unordered list from it. No different then going into the html/textbox module and creating the same unordered list. Those id's your seeing will be different per installation and can change even per list anytime you make any changes to the whole site / menu. DNN basically just starts incrementing the id element for each instance. Let me know if you need any additional information. Is there a particular reason you need those ids?

keeperofstars,

thanks for the information and quick response, but I was able to stumble upon the solution you just wrote.  I put the skin object into my ascx file and BAM, I had ID's.  Unfortunately this creates another problem.  I'm using the IDs to do replacements on the Anchor text and substituting an image.  This creates a really cool looking navbar.  However, when clicking on one of my nav's it now disappears because the id gets replaced with "navCurrentLink"  ARGHH!!!  Is there anyway to disable the navCurrentLink ID replacement?  I've gotten so close...

superdmon

 
New Post
3/19/2008 1:42 PM
 

Ok so you replaced the navigation text etc with images, via their id's but when you select an item during the page refresh it changes the id to the navCurrentLink. Which reverts out your styling. You could style the navCurrentLink, but it will apply that styling to whatever active menu item you are on. If your just putting an image as a background or such not a biggy. IE if your just saying background-image: image and you want that image to be the same regardless of the current page, then your ok. But if your wanting a specific image per menu item / root item then that won't work. There is one trick that I use for a root menu where I have custom images. You make a skin for each root item, and create a "new" instance of the housemenu per skin. So Homepage skin Housemenu set the CssElementId = Housemenu. Then style it accordingly. Create a new ascx / html file and this time its HouseMenu:2 and set it to CssElementId = HouseMenu2 then style HouseMenu2 accordingly for that page. Then set the root page and all subpages to use the appropriate skin. IE the Homepage and any pages below it use Homepage. Now the only downside to this method is when you navigate to a subchild your root item no longer uses the navCurrentLink id. This means your subpages menu selection will use the navCurrentLink styling. This is not a "bad" thing depending on how your menu / navigation is setup on your site, but it can be quite annoying. Naturally you can resolve this issue by creating a custom skin for each page which controls the styling. Let me know if that was all greek or if you makes any sense. I have an example you could follow if you want. Its html + xml + CSS but the concept remains the same for ascx files.

Its a bit hard for me to build / give an exact work around without seeing the navigation your trying to accomplish, but I think I have the general id.

 
New Post
3/19/2008 3:58 PM
 

I made a post on an Housemenu image menu here: http://www.dotnetnuke.com/Community/ForumsDotNetNuke/tabid/795/mid/2108/threadid/95362/scope/posts/Default.aspx#95458

It's a technique to use page icons for the menu.

an example can be seen here http://cals.verhagenit.net/nieuwegein/Onderwijsbegeleiding/Identiteit/tabid/135/Default.aspx,

Hover over "vakken" and "HOOFDMENU", this is all Housemenu,  I do use a custom JS and CSS...

 
New Post
3/20/2008 11:09 AM
 

keeperofstars,

I created my own work-around by using a little bit of javascript magic.  At the bottom of my ascx template file I use some javascript that locates the menu in the DOM and replaces the IDs with the proper page names.  So for example:

<li id="navItem55"><a id="navLink55" href="http://mysite.com/About/tabid/55/Default.aspx" title="About" tabindex="1">About</a>
becomes:
<li id="navItem55"><a id="About" href="http://mysite.com/About/tabid/55/Default.aspx" title="About" tabindex="1">About</a>

This way each parent link has it's own unique identifyer which also relates to the section or page.  Now I've only got one more issue to solve and that is the css drop-downs in firefox look great, but in IE they are either not appearing at all or appearing all the way down the page!  I've noticed there is some text in there saying "false" and the alignment / positioning is all messed up.  Could it be that the skinobject.js has some code that is mucking up my drop-downs in IE???

Once again, any advice would be greatly appreciated!!

SuperDMon

 
New Post
3/20/2008 3:29 PM
 

make sure every single tag is properly formed. If one of them is not properly formed then IE will throw a fit while firefox just fixes the issue for you. Now one other thing could be a related issue. There is a javascript function in Housemenu.

var ieUL's = o.Menu.getElementsByTagName('UL') from what I can tell it grabs the UL's id for use in IE. Its an IE function only from the code comments around the function. Not sure if your javascript is conflicting with it or if you just have a malformed tag somewhere in the ascx file. I recently had a > missing and the menu that resulted in IE was very weird but was completely fine in firefox. Man I wish we could just burn IE, and force the world to use firefox. lol Anyways, if you wouldn't mind could you send me that javascript? I am still learning the finer details of javascript, been a C++ / VB.net / asp.net programer that I am just now getting the chance to study javascript. I might be able to look through it as well and see if it would have any conflicts with the IE function. email: mathomp3@hotmail.com.  Oh and to look at the function / error I used firebug. You can add IE tab option add-on to firefox, it lets you swap the rendering engine on a page back and forth between firefox and IE. This way you can render a page as if it was your default IE installation, but within the firefox browser which allows you to use firebug to look at just what IE is really doing. I find this is much better then IE's webdeveloper option. Just a tip.

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...house Menu: How to get startedhouse Menu: How to get started


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out