小编Zaj*_*ajn的帖子

Fancybox - 在一个图库中组合图像和iframe

我正在处理的项目中有一个"附加文件"容器,它显示已附加到特定事件的文件的缩略图.当用户单击缩略图时,会打开一个fancybox窗口,向他们显示附加图像或文本文件的更大预览.

现在,我的解决方案包括将fancybox类型设置为iframe,如下所示:

$(".fancybox_group").fancybox({
    type : 'iframe'
});
Run Code Online (Sandbox Code Playgroud)

这将显示文本文件和图像,但图像周围有这个巨大的白色边框.我在google上做了一些搜索并找到了这个解决方案,但它对我不起作用.这只是创建了两个独立的fancybox实例; 一个用于图像,一个用于iframe.我希望能够滚动浏览一个库中的所有附件.这可能吗?

这是一个关于jsfiddle的例子,显示了我想要实现的目标.我从fancybox示例中借用了代码/图像,并添加了另一个缩略图链接到文本文档.这就是我在项目中设置的方式.任何见解将不胜感激.

javascript jquery fancybox

4
推荐指数
1
解决办法
7541
查看次数

使用 LINQ 连接两个表并将多条记录作为一行返回

我正在尝试编写一个 LINQ 表达式,它将连接两个表并以类似于使用 MySql 的 GROUP_CONCAT 的格式返回数据。我尝试在 Google 和 SO 上搜索,但我发现的所有结果都使用了 MSSQL 或者只使用了一张表。我现在写的表达式如下所示:

from d in division
join o in office on d.Id = o.DivisionId
select new
{
    id = d.Id,
    cell = new string[] { d.DivisionName, o.OfficeName }
}
Run Code Online (Sandbox Code Playgroud)

正如预期的那样,这将返回每个部门的列表以及与该部门相对应的办公室。唯一的问题是,由于大多数部门都会有多个办公室,因此我为该部门的每个办公室找回一个部门。基本上我看到的结果是这样的:

Division1: Office1
Division1: Office2
Division1: Office3
Division2: Office1
Run Code Online (Sandbox Code Playgroud)

当我想看的时候:

Division1: Office1, Office2, Office3
Division2: Office1    
Run Code Online (Sandbox Code Playgroud)

我记得不久前用 MySql 做了一些使用 GROUP_CONCAT 的事情,但我不知道使用 LINQ 相当于什么。我尝试编写一个具有IEnumerable<Office>参数并使用扩展方法构建字符串的方法Aggregate,但是按照我现在编写的 LINQ 表达式的方式,每个 Office 都会传入而不是IEnumerable<Office>. 有没有比我现在正在做的更好的方法来解决这个问题?我对 LINQ 表达式相当陌生,所以如果这是微不足道的,我深表歉意。

linq join

3
推荐指数
1
解决办法
4224
查看次数

setTimeout无法按预期工作

在我的应用程序中,我使用ajax向下滚动功能加载用户帖子.

for循环迭代花费太多时间,浏览器冻结直到显示结果.所以我实现了一个setTimeout方法来修复它,但由于某种原因,在调试时流不会进入setTimeout方法.

页面也是空白的,不会呈现数据.

  success : function(responseJson) {
        $("#loadingdata").toggle();
        enableScrolling();

        if($.isEmptyObject(responseJson)){
          $("#noMorePosts").toggle();
          disableScrolling();
          paginationComplete=true;
        }

        $.each(responseJson, function (index) {     
          (function(index) {
            setTimeout(function(index) { //the flow doesn't move inside this
              var resp_JSON=responseJson[index];
              var dateObj=resp_JSON.postCreationTime;
              resp_JSON.postCreationTime = moment(dateObj).format("h:mm a, ddd, MMM Do YY");
              var timeago = moment(dateObj).fromNow();
              resp_JSON.timeago = timeago; 
              resp_JSON.username=userName;               
              var post_template = $('#homepostcontainertemplate').html();
              Mustache.parse(post_template);   
              var post_info = Mustache.to_html(post_template, resp_JSON);
              $('#homepublisherpostsdiv').append(post_info);
              $('div').linkify();
            });
          })(index);
        });
Run Code Online (Sandbox Code Playgroud)

当流程达到setTimeout时,它命中的下一个代码是jquery lib

在此输入图像描述

我做得对还是错过了什么?

注意:我从服务器上获得了responseJson数据.如果没有setTimeout,数据将加载到页面上.

javascript ajax jquery

1
推荐指数
1
解决办法
124
查看次数

标签 统计

javascript ×2

jquery ×2

ajax ×1

fancybox ×1

join ×1

linq ×1