2009-11-23 5 views
0

Je suis en train d'ajouter Fancybox à mon application ASP.NET MVC, mais je vais avoir des ennuis.des problèmes avec Fancybox (P

Comme vous pouvez le voir, j'ai ajouté des références à jQuery et Fancybox. Le css .. est incapsulated l'intérieur de mon style.css Et toutes les images sont au bon endroit

<link rel="stylesheet" href="/Content/style.css" type="text/css" media="screen" /> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" src="/Scripts/jquery.fancybox-1.2.6.pack.js"></script> 

Eh bien, j'ai ajouté ces lignes pour lancer le plug-in Fancybox:

<script type="text/javascript"> 

    $(document).ready(function() { 
     $("a.zoom").fancybox(); // The a with zoom class 
    }); 

</script> 

Ensuite, je dois le lien:

<a class="zoom" href="http://www.nytimes.com">This goes to iframe</a> 

Mais quand je clique sur le lien je reçois une: erreur d'exécution Microsoft JScript: Autorisation refusée alt text http://img265.imageshack.us/img265/7738/screenshot20091123at352.png

Et ceci est mon écran après: alt text http://img14.imageshack.us/img14/7738/screenshot20091123at352.png

Je ne sais pas Que faire. Je suis désespérée parce que j'ai passé toute ma journée à essayer de comprendre ce qui se passe. S'il vous plaît, aidez! :)

Répondre

2

Vous devez ajouter la classe 'iframe' au lien pour indiquer à fancybox d'utiliser un iframe pour charger le contenu afin d'éviter un conflit avec le same origin policy. La même politique d'origine empêche le navigateur de télécharger du contenu externe via AJAX. Vous pouvez également ajouter un paramètre ?iframe à l'URL et obtenir le même effet.

+0

Oui, j'ai fait ça et ça a bien marché. Merci. Maintenant, comment puis-je forcer à faire une requête Ajax au lieu d'une requête HTTP? –

+0

Encore une fois, vous avez raison les gars! Si j'ajoute la classe iframe, la Fancybox ne fait pas la requête via Ajax. Retirant la classe du lien, il a commencé automatiquement à faire la requête ajax. Merci les gars!! tu m'as sauvé la vie. :) –