php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.08.2010, 11:30  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Das erste Problem ist, dass man nicht das Resultat vorhersagen kann. Du kannst aber z. B. die Anzahl der Zeichen in dem Text durch die Anzahl der Bilder teilen und dann in diesem Intervall die Bilder einfügen. Das sollte eigentlich mit Javascript machbar sein. Ist aber für einen Einsteiger vermutlich nicht ganz trivial.
xm22 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.08.2010, 12:38  
Benutzer
 
Registriert seit: 10.12.2009
Beiträge: 36
PHP-Kenntnisse:
Anfänger
Green_of_Dutch befindet sich auf einem aufstrebenden Ast
Standard

Ich habe keine Ahnung von JS. Ich werds schon irgendwie anders lösen. Danke.
Green_of_Dutch ist offline   Mit Zitat antworten
Alt 09.08.2010, 11:55  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Weil mich das auch gerade interessiert hat, hier mal ein rudimentärer Ansatz, der ohne Frameworks funktioniert:

Code:
    
    var imageList = ["img_1.jpg", "img_2.jpg", "img_3.jpg"]
    
    function parseText(obj) {
        var str = obj.innerHTML;
        
        var interval = Math.floor(str.length / imageList.length);
        
        var parts    = []
        
        for (var i = 0; i < imageList.length; ++i) {
            if (imageList[i]) {
                parts[parts.length] = str.substr(i * interval, (i + 1) * interval) + "<img src=\"" + imageList[i] + "\" />";
            } else {
                //Zu wenige Bilder vorhanden
                parts[parts.length] = str.substr(i * interval, (i + 1) * interval);
            }
        }
        
        obj.innerHTML = "";
        for (i in parts) {
            obj.innerHTML += parts[i];
        }
    }
</script>
</head>
<body onload="parseText(document.body)">
    Das erste Problem ist, dass man nicht das Resultat vorhersagen kann. Du kannst aber z. B. die Anzahl der Zeichen in dem Text durch die Anzahl der Bilder teilen und dann in diesem Intervall die Bilder einfügen. Das sollte eigentlich mit Javascript machbar sein. Ist aber für einen Einsteiger vermutlich nicht ganz trivial.
</body>
</html>
imageList muss vorher statisch oder über php oder sonstwas gefüllt werden. Die Funktion parseText bekommt als Parameter ein Handle auf das Element, bei dem der Text modifiziert werden soll.
xm22 ist offline   Mit Zitat antworten
Alt 09.08.2010, 12:38  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von xm22 Beitrag anzeigen
hier mal ein rudimentärer Ansatz, der ohne Frameworks funktioniert
Na ja, „funktioniert“ ist extremst übertrieben.

Bei reinem Text mag das noch irgendwie hinhauen - aber sobald sich HTML-Tags darin befinden, wird das kolossal schief gehen.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
css 2 bilder teilen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:47 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum