Solved

Pop up of side bar question

Posted on 2013-01-02
5
247 Views
Last Modified: 2013-01-19
Hi everyone,

I have a javascript file for a module I purchased and want to make a small change to it. Side Bar Image
When you click on a topic header all of the sub heading pop out also (as in the attached image,  this is what appears after I click "Photo" ).

I would like to change this so that the sub-headings do not pop out at all. All of the other functionality is correct.

Here is the javascript file that I believe controls the page but I'm having some difficulty locating the part that changes this.

$Core.mgfaq = {

    loadActions:function()
    {
    	var sidebar = $('#js_block_border_faq_panel');
    	var top = sidebar.offset().top - parseFloat(sidebar.css('marginTop'));
    	$(window).scroll(function (event) {
    		var ypos = $(this).scrollTop();
    		if (ypos >= top) {
    			sidebar.addClass('fixed');
    		}
    		else {
    			sidebar.removeClass('fixed');
    		}
    	});
    	$.localScroll.hash({
    		queue:true,
    		duration:500
    	});
        $.localScroll({
          queue:true,
          duration:500,
          hash:true,
          onAfter:function( anchor, settings ){}
        });
    	$('ul.faq_submenu li a').click(function(e){
    		var linkHref = $(this).attr('href');
            //var linkHrefID = linkHref;
            var linkHrefClass = linkHref.replace("#", ".");
            var relId = $(this).attr('rel');
            if(relId){
              $('.faq_subaction').hide();
              $('.'+relId).toggle();
            }
            setTimeout(function(){
                $(linkHrefClass).highlightFade({color:'rgb(255, 236, 142)', speed: 2000});
                //$(linkHrefID).highlightFade({color:'rgb(255, 236, 142)', speed: 2000});
            }, 600);
    	});
    	$('#js_block_border_faq_panel ul.action li a').click(function(e){
    		var linkHref = $(this).attr('href');
            //var linkHrefQID = linkHref;
    		var linkHrefID = $(this).attr('rel');
            linkHref = linkHref.replace("#", ".");
            if(linkHrefID){
              $('.faq_subaction').hide();
              $('.'+linkHrefID).toggle();
            }
            setTimeout(function(){
                $(linkHref).highlightFade({color:'rgb(255, 236, 142)', speed: 2000});
                //$(linkHrefQID).highlightFade({color:'rgb(255, 236, 142)', speed: 2000});
            }, 600);
    	});
    }

}

$Behavior.initMGFAQPage = function(){
    $Core.mgfaq.loadActions();
}

Open in new window


Thanks for your help,

D
0
Comment
Question by:TLN_CANADA
  • 3
  • 2
5 Comments
 
LVL 18

Expert Comment

by:AJ Watson
ID: 38738902
Instead of having the submenu pop out, what do you want them to do?
If they don't pop out, how do you want visitors to access the links?
0
 

Author Comment

by:TLN_CANADA
ID: 38738904
Hey Rartemass, yes, it can just take them directly to the links section on that page. Sorry for not clarifying that. It's an FAQ page.
0
 
LVL 18

Expert Comment

by:AJ Watson
ID: 38738929
It has been a while since I have coded in javascript and jquery so take this advice with the requisite grain of salt.
On lines 32 and 46 there is .hide().
Chanigng this to .show() should prevent the elements from hiding and thus remain visible at all times.
0
 

Author Comment

by:TLN_CANADA
ID: 38739031
Hi, sorry, maybe I wasn't clear in the functionality I wanted. I don't want to sub-menus to appear at all. Changing the hide function to show just makes the page so that the sub-menus can be toggled to show and to hide.

I want to keep the sub menus invisible at all time. The script is already setup so that if a user clicks on a menu item it takes them to take part of the page so all that is needed is to remove the function that opens the sub-menu items upon clicking the menu item.

Thanks,

D
0
 
LVL 18

Accepted Solution

by:
AJ Watson earned 500 total points
ID: 38739255
OK that makes sense now.
Do you have the sub menus specified in the HTML at all? I would first remove any sub menus or at least set them to display:none in the CSS.
This may not resolve the issue however.

Do you have this working on a live website that we can take a look at? It will make things easier to pinpoint.
0

Featured Post

ScreenConnect 6.0 Free Trial

Explore all the enhancements in one game-changing release, ScreenConnect 6.0, based on partner feedback. New features include a redesigned UI, app configurations and chat acknowledgement to improve customer engagement!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

JavaScript can be used in a browser to change parts of a webpage dynamically. It begins with the following pattern: If condition W is true, do thing X to target Y after event Z. Below are some tips and tricks to help you get started with JavaScript …
This article discusses four methods for overlaying images in a container on a web page
In this tutorial viewers will learn how to position items using CSS's three positioning types Create a new HTML document with an internal stylesheet.: Create another div in CSS and name it Absolute : Type "position:absolute;" and "top:10px; left:50p…
The viewer will learn the benefit of using external CSS files and the relationship between class and ID selectors. Create your external css file by saving it as style.css then set up your style tags: (CODE) Reference the nav tag and set your prop…

823 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question