1

I'm using Fancybox 2.0.6 and jQuery 1.7.2 and when I use a href url that begins with a slash, I get the following error:

Syntax error, unrecognized expression: /path/to/load

If I remove the slash, it works. Obviously, I get a 404, but fancybox opens.

And yes, I do need the url to start with a slash.

Thank you.

4

3 に答える 3

1

次のプロパティをリンクに追加する必要があります: data-fancybox-type="iframe"

于 2013-05-02T12:21:50.387 に答える
1

Fancybox 2.0.5 を使用した jQuery 1.7.1 にも同様の問題があります。

先頭のスラッシュだけでなく、スラッシュの前の文字「a」または1つ以上のドットも、私のテストで同じ問題を引き起こします。他の文字またはそれ以上の文字「a」を入力しても問題ないようです。

「href」属性で絶対パスを使用して解決します。別の解決策として、Fancybox の「href」オプションを試すことができます。(書類

試してみたところ$(this).attr('href')、パスが相対パスでスラッシュで始まっていても、正常に機能することがわかりました。

私が試したコード:

$('.fancybox').fancybox({
    href: $(this).attr('href')
});

2012 年 7 月 3 日更新:

上記で試したコードが常に機能するとは限らないことがわかり、ここでいくつかのデモを作成しました。「type」オプションを使用してもエラーはないようです。

于 2012-07-02T08:33:16.803 に答える
0

これは古いスレッドですが、Google の上位にあります。Fancybox の Github に送信されたバグを確認できます。

https://github.com/fancyapps/fancyBox/issues/290

ノート!fancyBox がコンテンツ タイプを取得できない場合は、エラー メッセージが表示されます (これは、「ajax」がデフォルト タイプとして使用されていた以前のバージョンとは異なります)。

つまり、リクエストのタイプ (「ajax」、「iframe」、「inline」) を指定する必要があります。

元:

$('.fancybox').fancybox({
     type: 'ajax'
}); 

また

$('.fancybox').fancybox({
     type: $.support.ajax? 'ajax':'iframe'
}); 
于 2012-08-14T15:43:40.073 に答える