Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Quellcode auslesen und bestimmte Zahl herausbekommen und dann verabeiten?

Frage Entwicklung JavaScript

Mitglied: Maik007

Maik007 (Level 1) - Jetzt verbinden

20.06.2014 um 12:05 Uhr, 2104 Aufrufe, 3 Kommentare

Hallo,
ich beschäftige mich nun mit Javascript und möchte ein Javascript im Firefox laufen lasssen.

Ich habe das Problem, dass ich gerne die Zahl aus dem Code 60.65 heraus bekommen möchte. Diese Zahl verändert sich auch immer wieder.
Wie kann ich hier vorgehen?
Schritt 2 ich möchte dann diese Zahl mit einer festen Zahl von mir vergleichen. Also ist Zahl 60.65 >X oder zwischen x und Y dann tue da ansonsten mache das!

01.
<div class="ms_holder tooltip_left" title="Knowledge - <p>Increases when you buy books.</p>"> 
02.
				<div class="ms_label"> 
03.
					<span class="left"><b>Knowledge</b></span> 
04.
					<span class="right highlighted1" ><b>1.00</b></span> 
05.
					<div class="clear"></div> 
06.
				</div> 
07.
				<div class="ms_gradient" style="width:1px;">&nbsp;</div> 
08.
			</div> 
09.
			<div class="ms_holder tooltip_left" title="Productivity - <p>Is an average between Energy, Experience, Knowledge. The higher these values, the higher the Productivity.</p>"> 
10.
				<div class="ms_label"> 
11.
					<span class="left"><b>Productivity</b></span> 
12.
					<span class="right highlighted1" ><b>60.65</b></span> 
13.
					<div class="clear"></div> 
14.
				</div> 
15.
				<div class="ms_gradient" style="width:7px;">&nbsp;</div> 
16.
			</div>
Über Hilfe würde ich mich sehr freuen. Wie geht ihr hieran?
Mitglied: colinardo
20.06.2014, aktualisiert um 19:31 Uhr
Hallo Maik007,
wenn das der komplette Code der Seite ist kannst du z.B. so die Zahl extrahieren und vergleichen:
01.
// wert extrahieren 
02.
var wert = document.getElementsByClassName("right highlighted1")[1].firstChild.innerHTML; 
03.
 
04.
// den string in float wandeln damit wir Ihn vergleichen können 
05.
var zahl = parseFloat(wert); 
06.
 
07.
// prüfen der Zahl auf ihren Wert 
08.
if (zahl >= 50 && zahl <= 70){ 
09.
	alert("Zahl liegt zwischen 50 und 70"); 
10.
} else if (zahl < 50){ 
11.
	alert("Zahl liegt unter 50"); 
12.
}
Hierbei gibt es ja in deinem Code bereits ein span Element mit den selben Klassen deswegen die Selektierung des zweiten Elements mit [1]. Also musst du je nachdem wieviele dieser Elemente mit den gleichen Klassen auf der Seite existieren den Wert entsprechend anpassen. Die Position kannst du z.B. mit der Eingabe von:
document.getElementsByClassName("right highlighted1")
in die WebKonsole der DeveloperTools in Firefox in Erfahrung bringen (STRG-SHIFT-K).

Grüße Uwe
Bitte warten ..
Mitglied: Maik007
20.06.2014 um 14:59 Uhr
Vielen Dank,
ich glaube nicht, dass ich den Code einfach kopieren kann und asführen kann. Bekomme immer eine Fehlemeldung das document nicht dfiniert ist.
Was müsste man da machen? Gibt es ein schnöne Seite wo ich mehr Beispiele und mehr über Javascript finde. Das scheint echt interessant zu sein!
von dieser Classe gibt es 4 und dann müsste der Befehl
var wert = document.getElementsByClassName("right highlighted1")[4].firstChild.innerHTML;
kauten. Was bedeutet hier firstchild.innerHTML?
Bitte warten ..
Mitglied: colinardo
20.06.2014, aktualisiert 23.06.2014
Zitat von Maik007:
Was müsste man da machen? Gibt es ein schnöne Seite wo ich mehr Beispiele und mehr über Javascript finde. Das scheint echt interessant zu sein!
Wenn du nicht sagst wo du das ganze ausführen willst und wo du die Befehle eingibst, schwer dir Hilfestellung zu leisten. Bitte lese erst mal hier alle Seiten durch (vor dem verstehen kommt lesen:):
von dieser Classe gibt es 4 und dann müsste der Befehl
var wert = document.getElementsByClassName("right highlighted1")[4].firstChild.innerHTML;
wenn das Element was du extrahieren willst das vierte ist, nein, dann müsste der Index 3 lauten , das Array ist 0-basiert!
Was bedeutet hier firstchild.innerHTML?
Der HTML-Inhalt nach dem ersten Kindelement nach dem span also alles was innerhalb vom <b> Element steht:
http://www.w3schools.com/js/js_htmldom.asp

Einen kompletten Anfängerkurs können wir hier verständlicherweise nicht liefern.

Hier noch zum Abschluss ein komplett funktionsfähiges Beispiel das die Änderung der Werte simuliert und je nach Wert im Dokument eine Antwort schreibt:
(als *.html abspeichern und im Browser aufrufen)
01.
<!doctype html> 
02.
<html> 
03.
<head> 
04.
<meta charset="utf-8"> 
05.
<title>extract number and check value</title> 
06.
<script type="text/javascript"> 
07.
var el_ergebnis; 
08.
var el_wert; 
09.
function init(){ 
10.
	el_ergebnis = document.getElementById("ergebnis"); 
11.
	el_wert = document.getElementsByClassName("right highlighted1")[1].firstChild; 
12.
	setInterval(extract,500); 
13.
	setInterval(changeValue,1500); 
14.
15.
function changeValue(){ 
16.
	var wert = (Math.random() * 100).toFixed(2); 
17.
	el_wert.innerHTML = wert;	 
18.
19.
function extract(){ 
20.
	// string in float wandeln 
21.
	zahl = parseFloat(el_wert.innerHTML); 
22.
	// prüfen der zahl 
23.
	if (zahl >= 50 && zahl <= 70){ 
24.
		el_ergebnis.innerHTML = "Zahl liegt zwischen 50 und 70"; 
25.
	} else if (zahl < 50){ 
26.
		el_ergebnis.innerHTML = "Zahl liegt unter 50"; 
27.
	} else if (zahl > 70){ 
28.
		el_ergebnis.innerHTML = "Zahl liegt über 70"; 
29.
30.
31.
</script> 
32.
</head> 
33.
 
34.
<body onLoad="init()"> 
35.
<div class="ms_holder tooltip_left" title="Knowledge - <p>Increases when you buy books.</p>"> 
36.
  <div class="ms_label"> <span class="left"><b>Knowledge</b></span> <span class="right highlighted1" ><b>1.00</b></span> 
37.
    <div class="clear"></div> 
38.
  </div> 
39.
  <div class="ms_gradient" style="width:1px;"> </div> 
40.
</div> 
41.
<div class="ms_holder tooltip_left" title="Productivity - <p>Is an average between Energy, Experience, Knowledge. The higher these values, the higher the Productivity.</p>"> 
42.
  <div class="ms_label"> <span class="left"><b>Productivity</b></span> <span class="right highlighted1" ><b>60.65</b></span> 
43.
    <div class="clear"></div> 
44.
  </div> 
45.
  <div class="ms_gradient" style="width:7px;"> </div> 
46.
</div> 
47.
<div id="ergebnis"></div> 
48.
</body> 
49.
</html>
Viel Erfolg beim Lernen!

Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Viren und Trojaner

Link: Neues Botnetz über IoT-Geräte

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows Installation
Windows 10 neu installieren (12)

Frage von imebro zum Thema Windows Installation ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...