Passer une variable d'une fonction javascript à un object classid

Signaler
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour,
J'ai besoin d'intégrer dans une url une variable générer par une fonction javascript du style :
function display(){
var chiffdujour = 13880;
valUrl = "http://www.monSite.com/"+chiffdujour+"/clipflash.swf";

Vous l'aurez compris, l'url change chaque jour, et se trouve être un fichier flash, intégrée dans la balise <object classid="">
ou
</object>

14 réponses

Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Je complete la question car il semble maquer la fin. Cette url est appelée dans les balise <object classid=""> et et ça marche pas. Quelqu'un aurait-il une réponse. Merci</object>
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Il manque toujours le corp du message. Donc disais-je, l'url est appelée par les balis object classid, param value=valURL et embed src=valURL. Et ça ne marche pas ? Merci
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
Bonjour,

    avec ce que tu dones comme infos, il faut deviner !

    alors je sais deviner des choses : lignes de la main
                                                            numérologie
                                                            astrologie

    mais  informatiquement, là, je ne suis pas doué pour les divinations...
    j'espère pour toi que d'autres intervenants sauront sentir...
       sinon, pour moi, il faut plus d'infos....

<hr />                Cordialement            Bul         «mon Site»     «M'écrire»
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Merci pour l'interet que tu portes à ma question.

Plus d'infos ? de quel ordre ?
Un script plus complet ? Une explication plus claire ?

Merci
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>de quel ordre
    assez pour qu'on puisse t'aider ( enfin... moi, car d'autres peuvent deviner ? )

    et surtout pas "complet" à priori sinon tu vas nous

        mettre 3598975 lignes et ce sera illisible...



<hr />                Cordialement            Bul         «mon Site»     «M'écrire»
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Re Bonjour,
J'ai besoin d'intégrer dans une url une variable générer par une fonction javascript.
La fonction :
// initialisation
var initVal = 130;
var j = 86400000;
var jInit = 01;
var mInit = 01;
var aInit = 2008;

// calcul du nbr de jour ecoule depuis l'initialisation
function display(){
today=new Date();
var pastdate=new Date(aInit, mInit-1, jInit);
calVal = Math.floor ( ( today.getTime() - pastdate.getTime() ) / j );
chiffdujour = initVal + calVal;
valUrl = "http://www.monSite.com/"+chiffdujour+"/clipflash.swf";

?? comment transmettre la variable valUrl
?? un simple
return valUrl;
?? ou
document.location.value="?valUrl="+valUrl;
document.location.src="?valUrl="+valUrl;
}


Vous l'aurez compris, l'url change chaque jour, et se trouve être un fichier flash, intégrée dans les balises object et embed de la page html.

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
WIDTH="500" HEIGHT="545" id="fich1" ALIGN="">

</OBJECT>

Ca marche pas ? le fichier flash n'est pas appelé ?
Il est évident que je fais une erreur !!!
Merci
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
if  (ie)     object.movie= " le swf voulu ";
else        embed.src ="le swf voulu";

dans param ou le src, on ne peut pas mettre une fonction javascript,
    uniquement une chaîne de caractères.

<hr />                Cordialement            Bul         «mon Site»     «M'écrire»
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
object c'est l'id de l'objetc, embed celui de l'embed.
ie, permet de distinguer ie des autres navigateurs,
    à vous de voir ce qui vous va le mieux pour tester.
<hr />                Cordialement            Bul         «mon Site»     «M'écrire»
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Bul,
merci pour cette réponse, cependant pour mieux comprendre ta réponse,
if(ie) est un situé dans la fonction javascript ? et permet de passer les valeurs à object si ie ou embed si autres navigateurs - OK
Mais dans le html object param, value="??" et embed="??" prennent quelle valeur ??

Merci de ces précisions.

Cordialement
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>if(ie) est un situé dans la fonction javascript …
    oui

>>et permet de passer
les valeurs à object si ie ou embed si autres navigateurs - OK

    oui

>>Mais dans le html object param,  value="??" et embed="??"  prennent quelle valeur ??

    aucune ou une "valeur initiale bidon".
    puisque c'est le javascript qui les met ces valeurs,
    et pas avec location.je ne sais quoi, ça ce serait pour lancer une nouvelle page
          pour ouvrir un swf on use de object.movie et/ou embed.src





<hr />                Cordialement            Bul         «mon Site»     «M'écrire»
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Bul,
Merci pour tes précisions.
Je dois être nul, mais ça ne parche pas.

J'ai isolé les éléments de calcul de ce script.
J'ai ainsi :

function display(){
chiffdujour = 130;
valUrl = "http://www.monSite.com/"+chiffdujour+"/clipflash.swf";
if ('ie') object.movie=valUrl
else embed.src=valUrl
}
</script>
<script language="javascript">display()</script>

Jusque là OK ?!

Dans le html,


<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="830" height="490" ID="Capture" name="fich1">







</object>


Cà marche pas. Pas de chargement du fichier flash.

Merci pour ton temps.

Cordialement
llnis
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>> if ('ie') object.movie=valUrl

>>else embed.src=valUrl

certes !
    if ('ie') ? on teste quoi là ?   un test c'est une variable/un champ/une valuer
        comparé à une valeur/un champ/une variable  

    je disais de tester le navigateur. si c'est Internet Explorer ou pas

    object et embed : c'est quoi ?
        ça devrait être les éléments html aux quels on s'adresse
        donc par exemple, leur mettre un id= et utiliser document.getElementById("id de l'élément")

<hr />                Cordialement            Bul         «mon Site»     «M'écrire»
Messages postés
8
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008

Bonjour,

Je voulais remercier Bultez de ses réponses.

J'ai finalement fini par trouver la meilleure façon de passer une variable d'une fonction javascript à object et embed d'un .swf.

J'ai généré en javascript le code .swf via document.write (donc plus de problème d'appel d'une fonction javascript) et écris ce code par l'appel de la fonction dans body du html.

Tout roule.

Merci encore

Cordialement
llnis
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>trouver la meilleure façon de passer une variable d'une fonction javascript
>>à object et embed d'un .swf.

>>J'ai généré en javascript le code .swf via document.write

    c'est une solution. pas la meilleure ( et même probablement la pire ;o) )

    il faut savoir que si document.write est appelé alors que la
         page a été totalement affichée ( cas si on appuie sur un bouton, un lien ... )
         cette page est totalement effacée ( y compris le javascript )
        
    mais si ça baigne pour ce que tu voulais faire, pourquoi pas.

<hr />                Cordialement            Bul         «mon Site»     «M'écrire»