Permalänk
Medlem

jQuery-funktion körs inte.

hej!

Jag sitter och pillar med ett projekt och försöker för tillfället skapa en liten drop-down-lista med hjäl av jQuery. Problemet är bara att scriptet inte körs vilket är mycket märkligt då en vän till mig kopierade koden och fick allt fungera utmärkt. Vet att det finns många här på forumet som är kunniga inom javascript och vänder mig därför till er.

<!DOCTYPE html> <html> <head> <title>Main</title> <script type="text/javascript" src="javatest.js"></script> <link href="styletest.css" type="text/css" rel="stylesheet"/> <script src="http://code.jquery.com/jquery-1.8.0.min.js"></script> </head> <a id="link">About</a> <div id="submenu"> <a href="#">About the company</a><br /> <a href="#">Careers</a> </div> </html>

a#link { background:#CCC; padding:10px; cursor:pointer; } div#submenu { position:absolute; border:1px solid #CCC; background:#FFF; padding:10px; }

$('a#link').click(function() { var submenu = $('div#submenu'); if (submenu.is(":visible")) { submenu.fadeOut(); alert("bajds"); } else { submenu.fadeIn(); } }); var submenu_active = false; $('div#submenu').mouseenter(function() { submenu_active = true; }); $('div#submenu').mouseleave(function() { submenu_active = false; setTimeout(function() { if (submenu_active === false) $('div#submenu').fadeOut(); }, 400); });

Mycket simpel kod som jag "koppat" från en hemsida. Allt körs förutom funktionerna på listan. Har provat att debugga med hjälp utav "alert" men den metoden visar att scriptet inte körs alls. Otroligt tacksam för hjälp.

Visa signatur

gg

Permalänk
Medlem

Se till att JavaScript-koden läses in efter all HTML.

Permalänk
Inaktiv

Och att du laddar jQuery före ditt javascript.

Permalänk
Medlem
Skrivet av anon150287:

Och att du laddar jQuery före ditt javascript.

Skrivet av piers:

Se till att JavaScript-koden läses in efter all HTML.

Tack för svar men inget av detta hjälpte. har provat koden i jsbin och där fungerar den klockrent men inte när jag kör den från notepad++ till webbläsare(har provat 3 stycken). :/

Här är källan till koden/guiden: http://www.webgeekly.com/tutorials/create-a-simple-jquery-dro...

Visa signatur

gg

Permalänk
Medlem

Har en annan fråga angående en .empty()-funktion.

function printJobInfo() { var selectbox = document.getElementById('selbox').value; $.getJSON( 'http://ofcourse.oru.se/~IK2009/json/get_jobs.php', {city: selectbox}, function (data) { if (data.status == 1) { // Lyckades // Resultat: for(var i = 0; i < data.length; i++) $('#content').empty(); $('#jobb').empty(); $('#content').append('<div id="jobb"><h2>' + data.result[i].city + '</h2>' + '</br></br>' + '<h4>Position: </h4>'+ data.result[i].position + '</br></br>' + '<h4>Description: </h4>'+data.result[i].description + '</div>'); } else { // Misslyckades alert("The information about this city is unavailable at the moment."); // Felmeddelande: } } ); }

Det är nämligen så att efter att man klickat på en stad en tredje gång så rensas inte jobb-diven utan texten läggs på istället. Mycket märkligt då den gör det dem första två gångerna.

Visa signatur

gg

Permalänk
Medlem
Skrivet av BigPinky:

Tack för svar men inget av detta hjälpte. har provat koden i jsbin och där fungerar den klockrent men inte när jag kör den från notepad++ till webbläsare(har provat 3 stycken). :/

Här är källan till koden/guiden: http://www.webgeekly.com/tutorials/create-a-simple-jquery-dro...

Något fel gör du för det fungerar utan problem om du kollar här:

http://jsfiddle.net/22yva/

Har du kollat så att jquery verkligen laddas och så du laddar det före all javascript?

Permalänk
Medlem
Skrivet av BigPinky:

Tack för svar men inget av detta hjälpte. har provat koden i jsbin och där fungerar den klockrent men inte när jag kör den från notepad++ till webbläsare(har provat 3 stycken). :/

Här är källan till koden/guiden: http://www.webgeekly.com/tutorials/create-a-simple-jquery-dro...

wrappa all jQuery-kod i:

$(document).ready(function() { KOD HÄR. }

EDIT

Skrivet av BigPinky:

Har en annan fråga angående en .empty()-funktion.

var selectbox = document.getElementById('selbox').value;

Det är nämligen så att efter att man klickat på en stad en tredje gång så rensas inte jobb-diven utan texten läggs på istället. Mycket märkligt då den gör det dem första två gångerna.

En liten fundering bara: Varför använda "document.getElementById('selbox')"? Det är väl samma sak som att skriva: "$('#selbox')"?

Visa signatur

Asus Zenbook UX32VD-R4002V.