html - Createing and calling events in Javascript -
i'm working on choose own adventure game written entirely in html , javascript; want create of elements entirely in javascript create awesome dynamic game! having trouble using events , event listeners. it's mystery game; after player chooses character list, can invite 5 guests party. 1 of guests killed, leaving solve mystery 3 suspects.
after you've selected player, there's button says "select character!". when button clicked, player creation ui supposed hidden, , new ui visible. code now, "startgame" function skipped entirely. doing wrong? can give awesome , appreciated!
btnplayer = document.createelement('button'); btnplayer.id = 'btn_btnplayer'; btnplayer.type = 'button'; btnplayer.addeventlistener('click', welcomeplayer(), true); btnplayer.onclick = welcomeplayer(); btnplayer.innerhtml = 'select character!'; mydiv.appendchild(btnplayer); edit modified button event properties this:
btnplayer.addeventlistener('click', welcomeplayer, true); //btnplayer.onclick = welcomeplayer; one commented out because neither has worked. tried clearing cache, too. here startgame() function button code excluded. won't include "charfirstnames[]" , "charlastnames[]" used create choices in dropdownlist. have them separated in order tell more interesting story; database records when bugs , basics worked out. don't think messed here, possible did? function called button coded html.
function startgame(divname) { mydiv = document.getelementbyid('story'); lblplayer = document.createelement('label'); lblplayer.id = 'lbl_player'; lblplayer.htmlfor = 'ddl_playerchar'; lblplayer.innerhtml = 'please select character. '; mydiv.appendchild(lblplayer); ddlplayer = document.createelement('select'); ddlplayer.id = 'ddl_playerchar'; mydiv.appendchild(ddlplayer); defopt = document.createelement("option"); defopt.value = 0; defopt.text = 'select...'; ddlplayer.appendchild(defopt); //create , append options (var = 0; < charfirstnames.length; i++) { var option = document.createelement("option"); option.value = charfirstnames[i]+'_'+charlastnames[i]; option.text = charfirstnames[i]+' '+charlastnames[i]; ddlplayer.appendchild(option); } document.getelementbyid('btn_start').hidden = true; }
the welcomeplayer() function similar startgame() function, creating interface invite first "guest" , removing player creation ui.
both of these lines set onclick handler result of calling welcomeplayer function (see parens?).
btnplayer.addeventlistener('click', welcomeplayer(), true); btnplayer.onclick = welcomeplayer(); you mean
btnplayer.addeventlistener('click', welcomeplayer, true);
Comments
Post a Comment