小编Isa*_*bow的帖子

在缓存的图像上触发load()事件的更好方法是什么?

我正在编写一个脚本,div在激活指向它的缩略图之前等待内容加载到隐藏中.

$('#preload img:first-child')
.bind('load',activateThumb)
.each(function(){
    if(this.complete || this.complete===undefined) $(this).load()});
Run Code Online (Sandbox Code Playgroud)

each部件触发load()缓存中图像的事件.我必须添加它才能使页面在某些浏览器中工作,而这些浏览器不会触发load()缓存的图像.

这里还有一个插件本质上做同样的事情,通过触发加载事件而不是"手动"但通过重置src属性.

从编程的角度来看,这是更优雅的解决方案吗?

jquery jquery-plugins image-caching

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

我可以使用字符串引用变量吗?

说我有以下JS:

var foo_index = 123;
var bar_index = 456;
Run Code Online (Sandbox Code Playgroud)

以下HTML:

<div id="foo"></div>
<div id="bar"></div>
Run Code Online (Sandbox Code Playgroud)

然后我想说这个:

thisIndex = this.id + '_index'
Run Code Online (Sandbox Code Playgroud)

我想thisIndex成为一个号码.如何将字符串(这正是变量名称)转换为变量?

javascript

6
推荐指数
3
解决办法
270
查看次数

文件需要多大才能从gzip压缩中获益?

由于gzip在服务器端需要时间打包,而且在客户端需要更多时间解压缩,因此文件需要多大才能从中获益?

有没有真正的数字证明了gzip在常见下载速度下的功效?

compression gzip

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

如何使用JS触发GIF动画?

我有一个播放一次的动画GIF(不循环).我希望它在点击时动画.我试过这样的事情:

 $('#plus').click(function(){
    $('#plus').attr('src','');
    $('#plus').attr('src','img/plus.gif')
 });
Run Code Online (Sandbox Code Playgroud)

希望快速重置src会触发动画,但没有运气.谁知道会怎么做?

javascript jquery gif animated-gif

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

如何“捕捉”滚动到最近的预定义位置?

我有一个网站,本质上是四个 div - 每个 div 都设置为窗口的高度,以便整个文档是窗口高度的四倍。

这个想法是,点击一个 div 将滚动推进一个“窗口高度”——效果很好,如下所示:

// on click event

if(cur_frame<number_slides){
   scrolling = true;
   $('html,body').animate({scrollTop:window_height*cur_frame},function(){
      scrolling=false;
   });
}
Run Code Online (Sandbox Code Playgroud)

然而,在用户手动滚动页面后,我想将位置“捕捉”到最接近的窗口高度倍数 - 因此给定的 div 再次在屏幕上居中。我尝试使用超时,认为一个小的延迟可以防止它每秒触发一千次......

// on scroll event

clearTimeout(scroll_timer);
if(!scrolling) scroll_timer = setTimeout(function(){
   if(cur_scroll!=window_height*(cur_frame-1)) {
      scrolling = true;
      $('html,body').stop().animate({scrollTop:window_height*(cur_frame-1)},function(){
         scrolling = false;
      });
   }
},100); //20? 400? 1000?
Run Code Online (Sandbox Code Playgroud)

...但无法在与用户争夺滚动位置的脚本或破坏“捕捉”效果的严重长时间延迟之间取得平衡。

有什么建议可以实现这一点吗?

javascript jquery scroll

5
推荐指数
2
解决办法
3万
查看次数

如何检查元素的存在?

.length在条件语句中使用该方法,该方法轮询页面是否存在外部加载的对象(我不能使用jQuery对其进行样式直到它存在):

function hackyFunction() {
  if($('#someObject').length<1)
  { setTimeout(hackyFunction,50) }
  else
  { $('#someObject').someMethod() }}
Run Code Online (Sandbox Code Playgroud)

length是最好的方法吗?

javascript jquery

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

如何将.pdf文档的标题显示为页面标题?

我在网站上发布PDF并有一个指向它的链接,与任何其他文件相同.如果浏览器有能力,它会在新选项卡中显示PDF.但是URL(以及一个笨拙的URL)显示在文档title通常所在的选项卡的顶部.PDF文件有一个参数,我可以调整吗?或者有没有办法将文件包装成有效的东西?

(我已经尝试在Acrobat的选项中检查"显示文档标题",但没有这样做.)

html pdf

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

JavaScript可以在局部变量之间混淆吗?

如果我有一对既设置局部变量的函数,例如,i公共for循环中的变量,又一个在另一个正在运行时调用,那么是否有命名空间混淆的危险?

javascript

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

显示"加载..."图像的好方法是什么?

我正在使用div其中包含任意数量img元素的内容.现在,每个img都有以下CSS:

#content > img {
display: none;
position: absolute;
top: 0px;
left: 0px;
}
Run Code Online (Sandbox Code Playgroud)

并且图像可以循环显示,并具有依次显示和隐藏它们的功能.但是,在加载每个图像时,我想显示"加载..."图像.我想使用JavaScript/jQuery将每个不完整图像的源交换为"loading ..."图像,同时仍然允许它加载.什么是精益和卑鄙的方式来做到这一点?

javascript jquery image-loading

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

如何在WordPress中使用自定义帖子类型存档作为首页?

我想使用自定义帖子类型存档作为网站的首页,以便

 http://the_site.com/
Run Code Online (Sandbox Code Playgroud)

是根据我的archive-{post-type}.php文件显示的自定义帖子类型存档.

理想情况下,我想is_front_page()在我的functions.php文件中使用更改查询.我尝试了以下操作,将一个名为"Home"的页面作为我的首页:

 add_filter('pre_get_posts', 'my_get_posts');
 function my_get_posts($query){
     global $wp_the_query;
     if(is_front_page()&&$wp_the_query===$query){
        $query->set('post_type','album');
        $query->set('posts_per_page',-1);
     }
     return $query;
 }
Run Code Online (Sandbox Code Playgroud)

但首页返回"Home"的内容,似乎忽略了自定义查询.

我究竟做错了什么?总的来说,还有更好的方法吗?

注意:我确实在WordPress Answers中发布了这个,但该社区相对较小.

php wordpress

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