Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用fancybox在模式窗口中加载特定div_Jquery_Ajax_Jquery Plugins_Fancybox - Fatal编程技术网

Jquery 使用fancybox在模式窗口中加载特定div

Jquery 使用fancybox在模式窗口中加载特定div,jquery,ajax,jquery-plugins,fancybox,Jquery,Ajax,Jquery Plugins,Fancybox,我正在使用fancybox 2。我已经设法通过AJAX在fancybox中加载内容。但是它会加载整个页面,我只对特定的div感兴趣。在fancybox 1中,我们可以通过在ajax中添加过滤器来做到这一点。但我不知道如何在fancybox 2中进行过滤 如何从fancybox 2中的AJAX加载页面中筛选特定的div $(".fancybox").fancybox({ maxWidth : 800, maxHeight : 600,

我正在使用fancybox 2。我已经设法通过AJAX在fancybox中加载内容。但是它会加载整个页面,我只对特定的div感兴趣。在fancybox 1中,我们可以通过在ajax中添加过滤器来做到这一点。但我不知道如何在fancybox 2中进行过滤

如何从fancybox 2中的AJAX加载页面中筛选特定的div

    $(".fancybox").fancybox({
        maxWidth    : 800,
        maxHeight   : 600,
        fitToView   : false,
        width       : '70%',
        height      : '70%',
        autoSize    : false,
        closeClick  : false,
        openEffect  : 'none',
        closeEffect : 'none',
        type        : 'ajax',
        'ajax'      : {
            dataFilter: function(data) {
            return $(data).find('#modalArticleContainer')[0];
        }
    });

直到ajax工作但加载整个页面,当我添加过滤器时,它就会停止工作。这是我之前在fancybox 1中所做的操作。

如果您使用的是最新版本(https://github.com/fancyapps/fancyBox/zipball/master),然后有一个技巧可以从ajax响应加载特定元素-

<a href="mypage.html #my_id" class="fancybox fancybox.ajax">Load ajax</a>

$(".fancybox").fancybox();

$(“.fancybox”).fancybox();

如果您使用的是最新版本(https://github.com/fancyapps/fancyBox/zipball/master),然后有一个技巧可以从ajax响应加载特定元素-

<a href="mypage.html #my_id" class="fancybox fancybox.ajax">Load ajax</a>

$(".fancybox").fancybox();

$(“.fancybox”).fancybox();

我使用
afterLoad
回调来更新内容以查找特定元素,从而实现了这一点

$('.fancybox').fancybox({
 afterLoad   : function() {
  this.content = $("<div>").html(this.content).find("#main-content").html();
 }
});
$('.fancybox').fancybox({
后加载:函数(){
this.content=$(“”).html(this.content).find(“#main content”).html();
}
});
因此在本例中,仅加载
#main content
元素中的内容


这允许我们只在手机上点击链接,但在桌面上的fancybox中加载页面,而不需要页眉和页脚等。

我使用
afterLoad
回调更新内容以查找特定元素

$('.fancybox').fancybox({
 afterLoad   : function() {
  this.content = $("<div>").html(this.content).find("#main-content").html();
 }
});
$('.fancybox').fancybox({
后加载:函数(){
this.content=$(“”).html(this.content).find(“#main content”).html();
}
});
因此在本例中,仅加载
#main content
元素中的内容

这使我们只需在手机上点击链接,即可在桌面上的fancybox中加载页面,而无需使用页眉和页脚等。更简单的是:

<a data-fancybox data-type="ajax" data-src="my_page.com/path/to/ajax/" data-filter="#yourDivId" href="javascript:;">AJAX Content</a>

看看更简单的

<a data-fancybox data-type="ajax" data-src="my_page.com/path/to/ajax/" data-filter="#yourDivId" href="javascript:;">AJAX Content</a>


看看

这在HTML5中没有验证,JS有没有办法做到这一点?这在HTML5中没有验证,JS有没有办法做到这一点?