JavaScript - How To Refer To An Event Without Using Inline Scripting?
I am trying to re-write a script that I found on w3schools. The script should check whether ALT key was pressed or not. My objective is not to use any inline scripts and to refer to the event within a function. My script is not working. Could someone please have a look at it and help me? Thank you very much
<code> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> Event Object</title> <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> <script type="text/javascript"> function general() { document.getElementsByTagName("body")[0].onmousedown=function() { if(document.getElementsByTagName("body")[0].onmousedown.altKey==1) { alert("You pressed Alt key"); } else { alert("ALT key was not pressed"); } } } window.onload=general; </script> </head> <body> <p> Click somewhere in the document, we will tell you whether or not you pressed ALT key </p> </body> </html> </code> Similar TutorialsHi forum, I am trying to attach an event to a dynamically produced button, and then use stopPropagation and preventDefault. Code: function chapter12_nodeOne() { //create an element var element = document.createElement('input'); //set some attributes element.setAttribute('type', 'button'); element.setAttribute('value', 'submit'); element.setAttribute('id', 'myBtn'); //appendd the element into a DIV document.getElementById('myDiv').appendChild(element); //uses EventUtil to attach an event listener EventUtil.addHandler(element, 'click', function() { alert('event attached'); }); var flag = confirm('prevent default behavior of button?'); if (flag) { var el = document.getElementById('myBtn');/////////////////////////(1) var ev = el.onclick; } } var EventUtil = { addHandler: function(element, type, handler) { //check if the element and the browser support DOM Level 2 event attachment //if the user is not browsing with IE if (element.addEventListener) { element.addEventListener(type, handler, false); } //if user is browsing with IE else if (element.attachEvent) { element.attachEvent("on" + type, handler); } //if user is using a browser that only supports DOM Level 0 event attachment else { element["on" + type] = handler; } }, removeHandler: function(element, type, handler) { //check if the element and the browser support DOM Level 2 event attachment //if the user is not browsing with IE if (element.removeEventListener) { element.removeEventListener(type, handler, false); } //if user is browsing with IE else if (element.detachEvent) { element.detachEvent("on" + type, handler); } //if user is using a browser that only supports DOM Level 0 event attachment else { element["on" + type] = null; } } }; But when debugging I see under el on the line marked with (1) that the onclick event is null. What am I doing wrong?! PS:the event is attached, when I click on the button I get an alert message Hello, If i use this to protect myself from XSS scripting, do you think that it will be enough? http://www.hscripts.com/scripts/Java...e-html-tag.php Thank you. Can someone not just block this script, by banning javascript.? is it possible to capture the control.event or element.event that was fired to invoke the onbeforeunload event. for example, if a button is clicked and it causes the onbeforeunload event to fire can i determine which button was clicked. thanks Quote: Hi, below code is only working in Firefox but not in Internet Explorer. Once I select YES from drop down list, then the next text box should be greyed out and the second should show value 10. This works in Firefox but not in Firefox . Code: <html> <head> <title>Untitled</title> <script> function enable() { document.myForm.textbox.disabled = false; document.myForm.textbox2.value = 0; } function disable() { document.myForm.textbox.disabled = true; document.myForm.textbox2.value = 10; } function value() { document.myForm.textbox2.value = 10; } </script> </head> <body> <form name="myForm"> <table> <tr> <label> Do you accept </label> <td> <select name="na"> <option value="yes" onclick="disable()"> YES </option> <option value="no" onclick="enable()"> NO </option> <option value="NA" onclick="disable()"> NA </option> </select> <input type="text" name="textbox" value="" disabled> <input type="text" name="textbox2" value="10" > </td> </tr> <tr> <td> </td> </tr> </form> </body> </html> Dear Forum, I have a website of quite a few pages which also has a style sheet switcher so the user can select their own customised graphics and layout (css file) these css files load in the graphics but only when the call is clicked... even if the page has already been opened for seconds or minutes when the graphics could have been loaded in for an instant switch. so i implemented the following code: Code: <SCRIPT language="javascript"> function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } </SCRIPT> <body onLoad="MM_preloadImages('/corporate/heading.png','/creative/heading.png','/earth/heading.png','/under-the-sea/heading.png','/space-and-stars/heading.png','/classical/heading.png','/corporate/document.jpg','/space-and-stars/document.png','/creative/document.jpg','/earth/background.jpg','/under-the-sea/background.jpg','/classical/document.png','/classical/background.jpg','/under-the-sea/document.png','/corporate/home-graphics.png','/earth/content.jpg','/earth/footer.jpg','/earth/home-graphics.png','/under-the-sea/home-graphics.png','/creative/home-graphics.png','/space-and-stars/background.jpg','');"> it works fantastically - you open the page and as long as it takes to notice where you can click the styles is the same amount of time it takes to have the styles cached for the styles switch immediately and effortlessly. however, the site has grown and is now quite a number of pages with the above in each html file. ive just added a "creative 2" style, which has caused the above to need updating........ the maintenance of this code is inefficient to edit each page. would someone be able to point or show me how to, in principle: Code: <body onLoad="MM_preloadImages('/styles-code.js);"> styles-code.js?? page: '/corporate/heading.png', '/creative/heading.png', '/earth/heading.png', '/sea/heading.png', '/classical/heading.png', '/corporate/background.jpg', '/creative/background.jpg', '/earth/background.jpg', '/sea/background.jpg', '/classical/background.jpg', etc and have 1 page of this code called in by all pages in an easy to see and edit list? would really appreciate guidance with this, Hi guys, I'm trying to work on this code to make transportation an additional option when adding a reservation at http://morningstararuba.com/reservat...servation2.htm. But there must be some errors, I included part of the code, because it does not activate the selection box. Appreciate your help, thanks! Code: <tr> <td>Champagne:</td> <td><select name="champagne" size="1" disabled tabindex="16" onchange="javascript:total_cost(passangers,charter_request,champagne,cost)"> <option selected value="None">None</option> <option value="Freixenet">Freixenet</option> <option value="Veuve Cliquot">Veuve Cliquot</option> <option value="Veuve Cliquot Vintage">Veuve Cliquot Vintage</option> <option value="Moet Chandon Brut">Moet Chandon Brut</option> <option value="Moet Chandon Brut Rose'">Moet Chandon Brut Rose'</option> <option value="Moet Chandon Rose' Vintage">Moet Chandon Rose' Vintage</option> <option value="Dom Perignon">Dom Perignon</option> <option value="Dom Perignon Rose'">Dom Perignon Rose'</option> </select></td> </tr> <tr> <td>Transportation:</td> <td><select name="transportation" size="1" disabled tabindex="16" onchange="javascript:total_cost(passangers,charter_request,champagne,transportation,cost)"> <option selected value="None">None</option> <option value="Bentley Roundway">Bentley Roundway</option> </select></td> Hello, I am trying to create an imageuploader for my forum hosted on domain forum.com (fictional domain name) The image uploader is hosted on domain uploader.com (fictional domain name) When the uploader is done i want info to be passed from the uploader to the texteditor on the forum using javascript. I tried everything i could think of with document.getElementById but to no avail. The element on the forum is clickableEditor.textarea Is it possible and if so, can someone please help me out? I want to have a real time text ticker. I would be able to type something in and it would continue to scroll until I typed something else (followed by the return key), and it would scroll that, without the end-user having to refresh their screen to see the update. I was hoping their might be a script out there already that does that, but since I can't find one, I thought I'd see about trying to create one. What would be the most practical scripting language to use? Or if you know of something that does this already, could you point me in the right direction. Can Someone please help me with the script for making this work. This is a assignment I am having trouble with the required codes bring up a discount box displaying the output details dependent on the discount code used. I Belleive the While operator is used for this can someone please help me?I no my codes are probably all wrong but am desperate for help thanks For this part of the question you can assume that the user always inputs one of the three correct codes, FSSAVE, ISSAVE and SOSAVE. If (Discount code entered is FSSAVE) give discount one else if (discount code entered is ISSAVE) give discount 2 else if (discount code entered is SOSAVE) give discount 3 var discount; fSSAVE; iSSAVE; sOSAVE fSSAVE = 20p iSSAVE = 30p sOSAVE = 40p discount = window.prompt('Please enter a discount code,' Here'); Issue 1 - Solved I have this workbook with multiple sheet. I need that the data from the mail sheet gets sorted to the other sheets based on the value in certain cells. https://docs.google.com/a/housing.co...it?usp=sharing IQT 3.0 is the main sheet The condition to copy the data is simple based on data if available in column I to N then the data in that full row should get copied to the sheets with the same name as these columns. multiple entries is possible if you look at the test data Row 2 has data available in 3 columns i,K&L now all the relavent data should get copied to the sheets with the same name as these columns & the data should go under the appropriate columns in these sheets. Issue 2 - Pending Need Help Each error sheet is worked upon by different teams is there a way to ensure that the status of the project in the main sheet cannot be made live till all errors for that particular project have the YES selected under Resolved & Passed by QC. If the Resolved & Passed by QC. are YES for each error in a particular project only then can the status in the main sheet be changed to LIVE & highlighted in green else it should show the status as PENDING only no colour. Once the Status is live then the project should be moved to the archive sheet & also removed from the error sheets so that the only projects visible are the ones pending to be resolved & sorted by process date. also need to ensure that no one except the sheet owner can delete the code or the sheet. Hi there everyone.. I have a little assignment due and I have been absent for a long time (wont go into details) but I'm sorta lost on how to do it. I'm sure it's really easy. Code: Scanner kbd = new Scanner(System.in); System.out.println("\n\n" + "Box Drawing Program\n\n" + "When prompted, " + "enter the height & width of a box. " + "Enter a negative height\nto finish.\n\n"); System.out.print("Enter a height & width: "); int height = kbd.nextInt(); while (height > 0) { int width = kbd.nextInt(); kbd.nextLine(); drawBox(height, width); System.out.print("Enter another height & width: "); height = kbd.nextInt(); } kbd.nextLine(); System.out.println(); "Now add a helper function named drawBox. It takes the height and width from main and prints a box of that size." "Here is a sample run: Box Drawing Program When prompted, enter the height & width of a box. Enter a negative height to finish. Enter a height & width: 4 7 ******* * * * * ******* Enter another height & width: 3 8 ******** * * ******** Enter another height & width: -1 " I know it's probably something easy, but I'm really lost.. Any help would be greatly appreciated. Edit: The box seems to mess up when I paste it, it should look like a rectangle, haha Ok, for starters I'm not a beginner and my website is running under standards mode (not quirks). When my site loads I perform: Code: window.location.replace(window.location.href + "#encodedstuff"); The effect being that no new history points are created and the very first history point now includes some encoded info in the hash. When the user closes and relaunches IE8 and then chooses "reopen last browsing session" I expect IE to make the request for the page including the hash value. It does NOT! It simply makes the request for the URL without the hash (and then adds the hash as the next history point). I need help figuring out why and if there is a way to accomplish this without needing to add a parameter to the location get request (which will cause my site to reload upon launch if this parameter is not already set... I don't want it doing that). Please note that the browser DOES behave if I copy the new URL, including the hash value and paste it into a new tab (closing the old tab). When I relaunch IE8 and reopen the previous session it does make the request with hash value and my site is able to get the required info out of the hash. It only fails for a tab that initially did not have a hash and my script performs the above location.replace. Solving this is critical for my application, so I seriously appreciate any help! I am not super familiar with code - I can easily take code and with a little direction get the desired end result so anyone who can help me with this it will be VERY appreciated. I don't even know what terms to search in order to create a page that I am looking for.... So here goes: I want to model our distributor page after a R E D K E N.com Distributor Locator Page. Here is what happens.... There is a drop down menu of the 50 states, and when you select the state the table of information below changes. screen shots below I am sure this is fairly easy to resolve, however I don't know where to begin. Thank You in advance for your time. Kristi I have a ondrag event handler and in that I am trying to retrieve e.ClientX but it always return 0 in Mozilla. Works fine in IE though. How can retrieve the clientX and clientY in ondrag event? Hi, this will sound stupid, because it is, but i was browsing reddits creepy subreddit, and there was a post (This website's description on Google... : creepy) that was about a creepy site with some ambiguous text, i pressed the link in the comments and got to the site, when i went back, i kept seeing a smudge but only on the reddit creepy subreddit on the screen, idk how this is possible, i've never seen it before, and its on all devices that are connected to the same router, they all get that smudge, so do you guys know any possible ways to fix this? the site is (Krakl) and deleting cookies, cache, restarting etc didnt help, and that smudge is really annoying. tldr; visited site, got smudge trough a script on other site, i see it on other pcs connected to the same internet too. How to remove this, could my pc be infected or something, is this XSS? Sorry, i know that no one here is probably used to this, but i just about exhausted every single option with no results and i want to know whats causing this. Reply With Quote // I have following HTML code: Quote: <br/> <div style="display:none">.....</div> <div style="display:none">.....</div> How can I modify display to block in style attribute with Javascript? i have some really annoying issues with a widget which is known inline modal you can see that widget after you click the play button in the given link below, please help me out, the issue is that use google chrome and then go to this place, the link is: http://www.bloghuts.com/2010/09/star-island.html and in this page click on play, then you yourself will see the error, please tell me what to do with this error. And another problem is that again open the above link in internet explorer and click the play button you will see a different kind of annoying problem, except these two explorers it works fine, PLEASE HELP ME I WOULD REALLY BE THANKFUL TO YOU. Hi i have some inline code that i would prefer to transfer into javascript functions and place in a .js file in the head or foot of my webpage. I have tried to convert into funtions myself but could not get to work. Would appreciate any help to give me the correct working code. thanks. Here is the portion of code from inside a working form: <button id="decbtn" onclick="updbtn.style.background='url(images/wuc.gif)';qty.style.background='';decrement(this.parentNode.getElementsByTagName('input')[0]);return false;">-1</button> <input id="qtyinp" name="qty" onkeyup="updbtn.style.background='url(images/wuc.gif)';qty.style.background='url(images/packindic.png) no-repeat bottom right #ffffff';this.value=this.value.replace(/[^\d]/,'');return false;" maxlength="3" value="0" type="text"> <button id="incbtn" onclick="updbtn.style.background='url(images/wuc.gif)';qty.style.background='';increment(this.parentNode.getElementsByTagName('input')[0]);return false;">+1</button> <input name="pid" value="A0517A" type="hidden"> <button id="updbtn" type="submit" onclick="this.style.background='';qty.style.background='url(images/upd.png) no-repeat right top #ffffff';">Update</button> |