Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


javascript slår ut varandra, bara det undre av de två fungerar.

Postades av 2005-02-19 01:16:04 - Johan Svensson, i forum javascript/dhtml, Tråden har 2 Kommentarer och lästs av 768 personer

Jag har ett iriterande problem. jag har två javascript som jag vill använda på en sida men dom verkar inte gilla varandra särskilt mycket. Enskillt fungerar scripten bra men när jag har båda fungerar bara det jag laggt underst i "head" delen av sidan.

Klistrar jag in koden så som nedan så kommer det bara vara scriptet som gör om checkboxarna på sidan till bilder som kommer att fungera. Medans det övre av de två, som ger ändrad bakgrundsfärg på rad i tabell vid mouseover, kommer slås ut helt och alltså inte fungera.

Finns det någon lösning på detta så att båda kan fungera på samma sida?

Här är de två scripten:

<script language = "javascript">		
startHighlight = function()
{				
	if (document.all && document.getElementById)
	{
		navRoot = document.getElementById("myGrid");
			
		// Get a reference to the TBODY element 
		tbody = navRoot.childNodes[0];
			
		for (i = 1; i < tbody.childNodes.length; i++)
		{
			node = tbody.childNodes[i];
			if (node.nodeName == "TR")
			{
				node.onmouseover=function()
				{
					this.className = "over";								
				}
					
				node.onmouseout=function()
				{
					this.className = this.className.replace("over", "");
				}
			}
		}
	}
}
	
window.onload = startHighlight;			
</script>


<script type="text/javascript">
//<![CDATA[

function enhanceCheckboxes()
{
function img_onclick()
{
var bOff = (/Unchecked/.test(this.title));
this.title = bOff ? 'Checked' : 'Unchecked';
this.src = bOff ? 'images/logga_in/checkbox_checked.gif' : 'images/logga_in/checkbox.gif';
this.nextSibling.checked = bOff;
}

function input_onclick()
{
this.previousSibling.onclick();
}

var img,
input,
inputs = document.getElementsByTagName('input'),
i = inputs.length;
do
{
if (/checkbox/.test((input = inputs[--i]).type))
{
input.style.position = 'absolute';
input.style.left = '-3000px';
input.parentNode.insertBefore((img = document.createElement('img')), input);
img.title = input.checked ? 'Checked' : 'Unchecked';
img.src = input.checked ? 'images/logga_in/checkbox_checked.gif' : 'images/logga_in/checkbox.gif'
img.onclick = img_onclick;
input.onclick = input_onclick;
}
}
while (i);
}

onload = function()
{
enhanceCheckboxes();
//other onload routines
}

//]]>
</script>


Svara

Sv: javascript slår ut varandra, bara det undre av de två fungerar.

Postades av 2005-02-19 15:38:20 - Anders Vikström

Hej Johan,

Är inte särskilt haj på JavaScript (lärde mig faktiskt en del av att titta på din kod), men är det inte så enkelt att den första sättningen av windows.onload skrivs över av den andra? För att komma runt det skulle du kanske kunna skriva den sista kodsnutten så här:


prevOnLoad = windows.onload;

onload = function()
{
enhanceCheckboxes();
//other onload routines
if (prevOnLoad != null)
    prevOnLoad();
}
    


(If-satsen behövs bara om du är osäker på huruvida onload sätts i ett tidigare skede. Och, du kan naturligtvis flytta upp anropet av prevOnLoad om den första onload-funktionen skall köras före den andra.)


Svara

Sv:javascript slår ut varandra, bara det undre av de två fungerar.

Postades av 2005-02-20 20:27:16 - Johan Svensson

Tack för ditt svar. Letade som en galning efter andra script som passade ihop istället och det känns som jag hittat en bättre lösning istället för dessa script. Men tack i alla fall.


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 722
27 958
271 751
5 664
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies