php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 22-04-2008, 17:59
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard content dynamisch nachladen in welchem js steckt

geschätzte jsWelt,

ich möchte gerne content refreshen in einem div.

einfaches beispiel:

HTML-Code:
Code:
 <script type="text/javascript" src="http://demos.mootools.net/demos/mootools.svn.js"></script>
<script type="text/javascript">
		
   function getData() {
			txt = '<h3 class="toggler">
<a href="#introduction">text 1</a></h3><div class="accordion">
<div class="item"><span>Shirt 1</span><br />
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, </div>
</div><h3 class="toggler">
<a href="#introduction">text 1</a></h3><div class="accordion">
<div class="item"><span>Shirt 2</span><br />
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy </div>
</div>';				
			var el = document.getElementById("items");
			el.innerHTML= txt;
  }			
</script>
	
</head>

<body>

<form>
	<input type="button" value="getData" onClick="getData()" />
</form>
<div id="items"><h3 class="toggler">
<a href="#introduction">text 1</a></h3><div class="accordion">
<div class="item"><span>Shirt 1</span><br />
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, </div>
</div><h3 class="toggler">
<a href="#introduction">text 1</a></h3><div class="accordion">
<div class="item"><span>Shirt 2</span>
<br />Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy </div></div></div>		


<!-- muss unterhalb vo code stehen, warum auch immer -->
<script type="text/javascript" src="toggler.js"></script>

</body>
</html>
wenn die seite refresht wird, funktioniert der accordion Effekt und sobald ich den identischen code dynamisch nachlade, funktioniert dieser im identischen div nicht mehr.

Was ist falsch an meinem script?

Liebe grüsse aus Zürich
Roger

Geändert von innovationTune (22-04-2008 um 18:18 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 22-04-2008, 18:01
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Liebe grüsse aus Zürich
Liebe Grüsse von der Hardturmstrasse und Code umbrechen aber flux. Sonst landet der Thread im Trash

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #3 (permalink)  
Alt 22-04-2008, 18:09
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard

besser :-)
Mit Zitat antworten
  #4 (permalink)  
Alt 22-04-2008, 18:52
Manko10
 Newbie
Links : Onlinestatus : Manko10 ist offline
Registriert seit: Mar 2008
Beiträge: 115
Manko10 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie ich dich verstehe, soll Code nachgeladen werden, der auch zur Ausführung kommt?
Das geht nur solange, wie das load-Event noch nicht eingetreten ist, also solange die Seite noch nicht komplett geladen wurde. Sobald die Seite vollständig geladen wurde, lässt sich kein fremder JS-Code mehr einbinden.
Doch, natürlich lässt er sich noch einbinden. Aber er kommt eben nicht mehr zur Ausführung.
Mit Zitat antworten
  #5 (permalink)  
Alt 22-04-2008, 18:56
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Das ist ein Fall für eval.
Mit Zitat antworten
  #6 (permalink)  
Alt 22-04-2008, 19:12
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard

mhhh, das ist sehr schade... habe es nun auch noch mit dem mootools cart beispiel versucht...

die div's welche nachgeladen werden können nicht mehr drag & drop in den cart verschoben werden...

tja, da bin ich irgendwie am ende mit meinen ideen...

ich würde nun gerne nicht jedesmal die ganze seite neu laden wenn ich eine action ausführe...

was habe ich noch für Möglichkeiten?
Mit Zitat antworten
  #7 (permalink)  
Alt 22-04-2008, 19:14
Manko10
 Newbie
Links : Onlinestatus : Manko10 ist offline
Registriert seit: Mar 2008
Beiträge: 115
Manko10 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie PHP-Desaster schon schreib: eval(). Das führt einen String als JavaScript-Code aus. Eine andere Möglichkeit gibt es nicht.
Mit Zitat antworten
  #8 (permalink)  
Alt 22-04-2008, 19:25
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard

da komme ich noch nicht ganz mit... was das eval() betrifft.

Code:
   function getData() {			
	txt = '<?=$data?>';
	var el = document.getElementById("items");
	el.innerHTML= txt;
  }
dies funktion soll hier:
Code:
<form>
	<input type="button" value="getData" onClick="getData()" />
</form> 
<div id="items"></div>
nachgelden werden.

Wie muss ich nun das eval() anwenden?
Mit Zitat antworten
  #9 (permalink)  
Alt 22-04-2008, 19:28
Manko10
 Newbie
Links : Onlinestatus : Manko10 ist offline
Registriert seit: Mar 2008
Beiträge: 115
Manko10 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn es sich nur um EventHandler-Attribute handelt, muss eigentlich nichts nachgeladen werden. Die müssten automatisch angenommen werden.
Mit Zitat antworten
  #10 (permalink)  
Alt 22-04-2008, 19:36
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich war eben auch der Meinung.

ich verwende mootools und lade diese am anfang.
ich kann diesen datenstring am anfang gleich mit laden und das drag&drop funktioniert

wenn ich nun den identischen string nachlade ins identische div so funktioniert drag und drop nicht mehr.

der datastring sieht folgendermassen aus:
Code:
$data = '<div  id="1" class="find_item">' .
'hallo text 1 <br />' .
'</div>' .
'</div>' .
'<div  id="2" class="find_item">' .
'hallo und so <br />'.
'</div>' .
'</div>';
Mit Zitat antworten
  #11 (permalink)  
Alt 22-04-2008, 19:58
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich habe nun einen lauffähigen mootools Cart gebaut in welchem ich daten per ajax nachladen möchte.

Dieser Code ist lauffähig und kann als Beispiel für den Mootools drag&Drop angesehen werden.

Code:
<?php

$data = '<div  id="1" class="find_item">' .
'Artikel 1' .
'</div>' .
'<div  id="2" class="find_item">' .
'Artikel 2'.
'</div>';

$data1 = '<div  id="3" class="find_item">' .
'Artikel 3' .
'</div>' .
'<div  id="4" class="find_item">' .
'Artikel 4'.
'</div>';
?>

<script type="text/javascript" src="http://demos.mootools.net/demos/mootools.svn.js"></script>
<script type="text/javascript">
   function getData() {			
			txt = '<?=$data1?>';
			var el = document.getElementById("items");
			el.innerHTML= txt;
  }  
window.addEvent('domready', function(){
	var drop = $('cart');
	var dropFx = drop.effect('background-color', {wait: false}); 
	
	$$('.find_item').each(function(find_item){
	
		find_item.addEvent('mousedown', function(e) {
			e = new Event(e).stop();
	
			var clone = this.clone()
				.setStyles(this.getCoordinates()) 
				.setStyles({'opacity': 0.7, 'position': 'absolute'})
				.addEvent('emptydrop', function() {
					this.remove();
					drop.removeEvents();
				}).inject(document.body);
	
			drop.addEvents({
				'drop': function() {
					drop.removeEvents();
					clone.remove();
					find_item.clone().inject(drop);
					dropFx.start('7389AE').chain(dropFx.start.pass('ffffff', dropFx));
				},
				'over': function() {
					dropFx.start('98B5C1');
				},
				'leave': function() {
					dropFx.start('ffffff');
				} 
			}); 
	
			var drag = clone.makeDraggable({
				droppables: [drop]
			}); // this returns the dragged element
				
			drag.start(e); // start the event manual
		});
	
	});
});  	
</script>
<style type="text/css">
#cart {
	float: right;
	width: 100%;
	background-color: #fff;
	border: 1px dotted gray;
	padding-bottom: 30px;
}
.find_item {
	float: left;
	position: relative;
	height: auto;
	background-color: #fff;
	cursor: move;
	border:1px solid green;
	margin-left:5px;
}
#cart .find_item {
	width: 150px;
	height: auto;
	margin: 5px;
	border-width: 1px;
	cursor: default;
}
</style>


<div id="cart">&nbsp;</div>
<br />
<form>
	<input type="button" value="getData" onClick="getData()" />
</form> 
<div id="items"><?=$data?></div>
Meine Frage:
Warum funktioniert das Drag & Drop nach dem nachladen der Daten nicht mehr indem ich auf den getData Button drücke?

Geändert von innovationTune (22-04-2008 um 20:13 Uhr)
Mit Zitat antworten
  #12 (permalink)  
Alt 22-04-2008, 20:09
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was du in deinem ersten Post gemacht hast (Code umbrechen) machst du bitte auch im letzten Post Ich habe einer 1650-er Auflösung und immer noch einen Scrollbalken

Grüässli

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #13 (permalink)  
Alt 22-04-2008, 20:15
innovationTune
 Registrierter Benutzer
Links : Onlinestatus : innovationTune ist offline
Registriert seit: Jan 2006
Ort: Zürich
Beiträge: 48
innovationTune ist zur Zeit noch ein unbeschriebenes Blatt
Standard

so jetzt ist es umgebrochen und gaaaanz schön formatiert ja ja...

Grüsse an die Hardturmstrasse...
dort würde ich auch gerne wohnen :-)
Mit Zitat antworten
  #14 (permalink)  
Alt 22-04-2008, 20:26
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
dort würde ich auch gerne wohnen
OffTopic:

Dort arbeite ich zum Glück nur. In dieser Stadt würde ich nicht mal gratis wohnen wollen (so als eingefleischter St.Galler)

__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:59 Uhr.