2009-12-30 5 views
4

je peux accéder à des contenus locaux chargés dans un aveccontenu() dans <type d'objet = "text/html"></object>?

$("#frame").contents().find('div').css(...)

Lorsque vous utilisez un lieu <object type="text/html"> (même site local), la fonction de contenu ne fonctionne pas.

Existe-t-il un autre moyen ou ai-je oublié quelque chose?

suit ici le code de test:

HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
    <link type="text/css" href="css/style.css" rel="stylesheet"/> 
    <script type="text/javascript" src="js/jquery-1.3.2-min.js"></script> 
    <script type="text/javascript" src="js/try.js"></script> 
</head> 
<body> 
    <div id="header"></div> 
    <div id="here_goes_a_proprietary_side_i_dont_want_to_mess_inside"> 
     <object id="frame" type="text/html" data="/nastysite/index.php" width="100%" height="100%"></object> 
    </div> 
    <div id="footer"></div> 
</body> 

JS:

$(document).ready(function() { 

    alert("go ?"); //temporary solution to wait until everything is loaded. 
    $("#frame").contents().find('div').css("background-color", "red"); //nothing appens 
    console.debug($("#frame").contents().find('div')); //nothing 
}); 
+1

Si vous utilisez déjà jquery, pourquoi n'utilisez-vous pas simplement $ (targetElement) .load ('/ nastysite/index.php'); '? Cela semblerait beaucoup moins complexe que d'utiliser la méthode objet. – prodigitalson

+0

C'était ma première idée, mais ce site contient une ancienne version de jquery avec beaucoup de plugins. Bien sûr, j'ai essayé noConflict() et noConflict (true), sans grand succès. – Cal

+0

Avez-vous déjà découvert cela? J'ai la même question. –

Répondre

-1

Votre balise d'objet se ferme immédiatement, donc il n'a pas d'enfant div à trouver.

<object id="frame" type="text/html" data="/nastysite/index.php" width="100%" height="100%"></object> 
+0

Alors qu'il est vrai qu'il a besoin d'utiliser une balise de fermeture complète et non une syntaxe courte, je ne suis toujours pas sûr si elle va exposer le DOM de la page qu'il "importe". – prodigitalson

+0

Essayé avec la syntaxe courte, mais il n'a plus d'effet (le site est encore chargé avec succès). – Cal

Questions connexes