www.webdeveloper.com
Results 1 to 5 of 5

Thread: Urgent help needed

  1. #1
    Join Date
    Mar 2017
    Posts
    44

    Urgent help needed

    I'm new to javascript and I cant get the click eventlistener to work, its suppose to set the display of the ul in the header to display: block instead of none

    heres the html

    <!doctype html>
    <html lang="en">

    <head>

    <meta charset="utf-8">
    <title> How the web works </title>
    <link rel="stylesheet" href="css/style.css" />
    </head>

    <body>
    <div id="page">

    <header>
    <h1> Cole Pratt <span id="h1s"> No.2968615 </span> </h1>
    <img src="images/menuicon.png" alt="menuicon" width="40" id="menuicon"/>
    <ul>
    <li><a href="#">home</a></li>
    <li><a href="#">about</a></li>
    <li><a href="#">bio</a></li>
    </ul>
    </header>

    </div>
    <script src="scripts/mobilemenu.js" type="text/javascript"></script>
    </body>

    </html>
    the css

    /* BEGINNING OF STYLESHEET FOR MAIN PAGE */

    body {
    background-color: rgb(40, 40, 40);
    font-size: 16px;
    margin: 0 auto;
    font-family: helvetica, arial;
    }



    header {
    position: relative;
    background: linear-gradient(rgb(40, 40, 140), rgb(50,50,180));
    min-height: 40px;
    box-shadow: 0px 0px 5px black inset;
    }

    header h1 {
    position: relative;
    padding: 10px;
    font-style: italic;
    font-size: 1.2em;
    font-weight: bold;
    color: white;
    }

    #h1s {
    font-size: .6em;
    }

    img {
    position: absolute;
    top: 0px;
    right: 10px;
    }

    header ul {
    position: relative;
    display: none;
    }

    header ul li {
    background-color: red;
    text-align: center;
    height: 20px;
    background-color: grey;
    box-shadow: 0px 0px 1px black inset;
    }

    header ul li a {
    text-decoration: none;
    color: white;
    line-height: 20px;
    font-size: .6em;
    }
    and the javascript

    // SCRIPT TO DISPLAY AND HIDE THE MENU WHILE IN MOBILE FRIENDLY DEVICE

    // STEP ONE CREATE GLOBAL VARIABLE SO WE CAN MONITOR THE MENULOGO FOR CLICKS

    var menu = document.getElementById("menuicon");

    function menuclick(){
    if (menu.style.display == "none"){
    menu.style.display = "block";
    }
    }

    menu.addEventListener('click', menuclick);
    really really need quick help on this as I have an assignment due tomorrow

    thanks
    cole

  2. #2
    Join Date
    Mar 2017
    Posts
    44
    updated js

    // SCRIPT TO DISPLAY AND HIDE THE MENU WHILE IN MOBILE FRIENDLY DEVICE

    // STEP ONE CREATE GLOBAL VARIABLE SO WE CAN MONITOR THE MENULOGO FOR CLICKS

    var menuButton = document.getElementById("menuicon");
    var menu = document.getElementById("navlink");


    function menuclick(){
    if (menu.style.display == "none"){
    menu.style.display = "block";
    }
    }

    menuButton.addEventListener('click', menuclick);

  3. #3
    Join Date
    Dec 2012
    Posts
    1,628
    Unfortunately menu.style.display has a value only when it has been set by Javascript. Query !="block" instead:
    Code:
            var menuButton = document.getElementById("menuicon");
            var menu = document.querySelector("header ul");
            function menuclick() {
                console.log(menu.style.display);
                if (menu.style.display != "block") {
                    menu.style.display = "block";
                }
            }
            menuButton.addEventListener('click', menuclick);

  4. #4
    Join Date
    Dec 2012
    Posts
    1,628
    ... and by use of a few additional lines of CSS and HTML a toggling behaviour can be achieved without any Javascript:
    Code:
                    header #togglemenu {
                        display: none;
                    }
                    header #togglemenu:checked + ul {
                        display: block;
                    }
        </style>
        <header>
            <label for="togglemenu"><img src="images/buttonup.png" alt="menuicon" width="40" id="menuicon" /></label>
            <input type="checkbox" id="togglemenu"/>
            <ul>
                <li><a href="#">home</a></li>
                <li><a href="#">about</a></li>
                <li><a href="#">bio</a></li>
            </ul>
        </header>

  5. #5
    Join Date
    Mar 2007
    Location
    localhost
    Posts
    5,872
    Also, <!doctype html> better off as <!DOCTYPE html>
    --> JavaScript Frameworks like JQuery, Angular, Node <--
    ... and please remember to wrap code with forum BBCode tags:-

    [CODE]...[/CODE] [HTML]...[/HTML] [PHP]...[/PHP]

    If you can't think outside the box, you will be trapped forever with no escape...

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center

"

"

X vBulletin 4.2.2 Debug Information

  • Page Generation 0.15887 seconds
  • Memory Usage 2,881KB
  • Queries Executed 15 (?)
More Information
Template Usage (34):
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_global_above_footer
  • (1)ad_global_below_navbar
  • (1)ad_global_header1
  • (1)ad_global_header2
  • (1)ad_navbar_below
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)ad_thread_first_post_content
  • (1)ad_thread_last_post_content
  • (2)bbcode_code
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)headinclude_bottom
  • (5)memberaction_dropdown
  • (1)navbar
  • (4)navbar_link
  • (1)navbar_moderation
  • (1)navbar_noticebit
  • (1)navbar_tabs
  • (2)option
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available (6):
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files (26):
  • ./showthread.php
  • ./global.php
  • ./includes/class_bootstrap.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/functions_navigation.php
  • ./includes/class_friendly_url.php
  • ./includes/class_hook.php
  • ./includes/class_bootstrap_framework.php
  • ./vb/vb.php
  • ./vb/phrase.php
  • ./includes/functions_facebook.php
  • ./includes/functions_calendar.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_notice.php
  • ./packages/vbattach/attach.php
  • ./vb/types.php
  • ./vb/cache.php
  • ./vb/cache/db.php
  • ./vb/cache/observer/db.php
  • ./vb/cache/observer.php 

Hooks Called (72):
  • init_startup
  • friendlyurl_resolve_class
  • init_startup_session_setup_start
  • database_pre_fetch_array
  • database_post_fetch_array
  • init_startup_session_setup_complete
  • global_bootstrap_init_start
  • global_bootstrap_init_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • load_show_variables
  • load_forum_show_variables
  • global_state_check
  • global_bootstrap_complete
  • global_start
  • style_fetch
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • strip_bbcode
  • friendlyurl_clean_fragment
  • friendlyurl_geturl
  • forumjump
  • cache_templates
  • cache_templates_process
  • template_register_var
  • template_render_output
  • fetch_template_start
  • fetch_template_complete
  • parse_templates
  • fetch_musername
  • notices_check_start
  • notices_noticebit
  • process_templates_complete
  • friendlyurl_redirect_canonical
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • memberaction_dropdown
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • build_navigation_data
  • build_navigation_array
  • check_navigation_permission
  • process_navigation_links_start
  • process_navigation_links_complete
  • set_navigation_menu_element
  • build_navigation_menudata
  • build_navigation_listdata
  • build_navigation_list
  • set_navigation_tab_main
  • set_navigation_tab_fallback
  • navigation_tab_complete
  • fb_like_button
  • showthread_complete
  • page_templates