• STATISTIQUES
  • Il y a eu un total de 0 membres et 9960 visiteurs sur le site dans les dernières 24h pour un total de 9 960 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] InfoMirmo
    Apprentissage de l'informatique par l'intermédiaire de challenges de sécurité. Venez app...
    Hacking
    [EN] Rankk
    Site de challenge construit sur le principe d'une pyramide à 9 level. Level 1: 60,Level 2: 72,Level 3: 68,Lev...
    Challenges
    [EN] Framework Metasploit
    Le Framework Metasploit est un logiciel gratuit, open source de tests de pénétration développ&ea...
    Vulnérabilités
    [FR] Le site du zero
    Découvrez gratuitement la programmation (C, C++, PHP, MySQL, XHTML, CSS...), Linux, le Mapping, la modé...
    Programmation
    [EN] Astalavista
    JavaScript: 1, Exploit: 2, Crypto: 34, CrackIt: 15, Stegano: 8, Programming: 12, Logic: 36, Special: 6, Science: 4, Info...
    Challenges
    [FR] Kalkulators
    Ce projet a plusieurs buts, le premier étant l’étude de toutes formes cryptographiques, le cot&ea...
    Cryptographie
    [EN] wechall
    Pour les gens n'étant pas familiers avec les sites de challenges, un site de challenges est un site propos...
    Hacking

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Web] Changer le src d'un iframe régulièrement
19-05-2012, 20h04 (Modification du message : 19-05-2012, 20h15 par Booster2ooo.)
Message : #12
Booster2ooo Hors ligne
Contributeur
*****



Messages : 165
Sujets : 14
Points: 63
Inscription : Aug 2011
RE: PHP need help
Attention, jQuery =/= javascript, c'est une surcouche du js qui permet une manipulation du DOM nettement simplifiée. (En l'occurence, donc notre exemple, jQuery ne sert strictement à rien, il complexifie même un peu les choses)

Par contre, je me permets de te contredire aaSSfxxx (même si je comprends bien le point de vu Wink ). Ce petit snippet est un très bon exercice de débutant en javascript. Il permet de mettre en pratique les tableaux, la méthode getElementById qui est très utilisée et la fonction setInterval qui peut souvent s'avérée utile.

Je vais prendre la peine d'expliquer le snippet JS:
// Déclaration des variables et functions (sachant qu'en Javascript, une fonction peut être référencée via un nom de variable)
// On commece par déclarer un tableau siteList contenant nos urls. On aurait pu l'écrire comme ceci:
// var siteList = new Array('http://n-pn.fr/forum/showthread.php?tid=2031', ...)

var siteList = [
'http://n-pn.fr/forum/showthread.php?tid=2031'
, 'http://n-pn.fr/index.php?mod=tuto'
, 'http://n-pn.fr/index.php?mod=challenges'
]
// Toujours dans le bloque de déclaration, nous ajoutons la variable qui va servir au timer, ici une variable nommée interval d'une valeur de 5000
, interval = 5000 // 5secs
// On déclare une nouvelle variable buffer utilisée comme pile FIFO qui est un clone de siteList (le .slice(0) étant un petit trick permettant de dupliquer le tableau.)
// Si on avait mis buffer = siteList alors buffer n'aurait été qu'un alias de siteList, référenceant la même instance du tableau. Les opérations sur buffer
// auraient donc été faites sur siteList aussi (les deux étant le même tableau sous un nom différent)

, buffer = siteList.slice(0)

// On déclare maintanant la fonction qui va changer la source de l'iframe. On déclare donc une variable du nom next qui a pour valeur une fonction sans paramettre
, next = function() {
// Si notre pile buffer est vide, alors on reclone siteList
if(buffer.length == 0) buffer = siteList.slice(0);
// On accèdes à l'attribut src de notre iframe après l'avoir recherchée via son id dans le document et on lui passe la 1ere valeur entrée dans la pile
// qui par la même occasion lui est retirée (à la pile --> FIFO)

document.getElementById('iTarget').src = buffer.shift();
}
// On ferme le bloque de déclaration "var"
;

/* Tout ce qui ci dessus aurait pu s'écrire comme ceci: (déconseillé, je l'écris pour clarifier les choses car la synthaxe utilisée ci dessus peut être déconcertante)
var siteList = new Array('http://n-pn.fr/forum/showthread.php?tid=2031', 'http://n-pn.fr/index.php?mod=tuto', 'http://n-pn.fr/index.php?mod=challenges');
var interval = 5000;
var buffer = siteList.slice(0);
function next() {
if(buffer.length == 0) buffer = siteList.slice(0);
document.getElementById('iTarget').src = buffer.shift();
}
*/


// On execute une 1er fois notre fonction next() (on fait donc sauter la 1er valeur de la pile buffer et on s'en sert pour définir la source de l'iframe)
next();
// On lancer un timer qui executera notre fonction next() toutes les <interval> milisecondes, soit 5000 (5secondes)
// (Notez que dans la version jQuery, j'ai du utilisé une fonction anonyme pour faire l'appel à next() à cause de la portée de la fonction. En effet, comme elle est déclarée dans le scope de $(document).ready(), elle n'est pas accessible par setInterval qui rechercherait la fonction next() dans le scope global)

setInterval("next()", interval);

Ce qui, indenté et sans comment, donne bien:
Code :
var siteList = [
                        'http://n-pn.fr/forum/showthread.php?tid=2031'
                        , 'http://n-pn.fr/index.php?mod=tuto'
                        , 'http://n-pn.fr/index.php?mod=challenges'
                    ]
        , interval = 5000 // 5secs
        , buffer = siteList.slice(0)    
        , next = function() {
                if(buffer.length == 0) buffer = siteList.slice(0);
                document.getElementById('iTarget').src = buffer.shift();
            }
        ;

    next();
    setInterval("next()", interval);
+1 (0) -1 (0) Répondre


Messages dans ce sujet
RE: PHP need help - par EpicOut - 06-05-2012, 01h02
RE: PHP need help - par Booster2ooo - 06-05-2012, 10h16
RE: PHP need help - par romain95 - 06-05-2012, 11h11
RE: PHP need help - par Booster2ooo - 08-05-2012, 13h32
RE: PHP need help - par romain95 - 11-05-2012, 17h05
RE: PHP need help - par Di0Sasm - 11-05-2012, 19h40
RE: PHP need help - par romain95 - 15-05-2012, 17h30
RE: PHP need help - par Di0Sasm - 18-05-2012, 21h35
RE: PHP need help - par Booster2ooo - 19-05-2012, 13h44
RE: PHP need help - par supersnail - 19-05-2012, 17h11
RE: PHP need help - par Booster2ooo - 19-05-2012, 20h04

Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut