小编Ano*_*ous的帖子

.animate()的回调被调用两次jquery

由于我添加了一些scrollTop动画,我的回调的某些部分会被调用两次:

$('html, body').animate({scrollTop: '0px'}, 300,function() {
    $('#content').load(window.location.href, postdata, function() {                 
        $('#step2').addClass('stepactive').hide().fadeIn(700, function() {
            $('#content').show('slide',800);                    
        });
    });
});
Run Code Online (Sandbox Code Playgroud)

它似乎只是重复一次.show(),至少我没有那个load()或者.fadeIn()第二次被称为第二次的印象.在.show()得到尽快,因为它已经完成了第一次重复.设置scrollTop动画速度0顺便没有帮助!

我假设它与动画队列有关,但我无法弄清楚如何找到解决方法,特别是为什么会发生这种情况.

jquery callback

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

DateTime类与本机PHP日期函数

DateTime类肯定有一些方便的方法,似乎整体优于像本地的PHP日期函数strtotime,mktime以及strftime(及以上).但是,我不应该使用它有任何缺点或原因吗?

我能想到的唯一原因是创建一个类的整个实例可能比使用一个函数更昂贵.

  • 你同意吗?
  • 将DateTime对象用于简单的东西是否有意义?
  • 还有其他缺点吗?

在这两个选项之间切换似乎有点令人困惑,所以我想要清除我应该做的事情.

我的决定有两个例子:

  • 将日期转换为本地化值
  • 计算两个日期之间的时间

php strtotime

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

使用SUM()而不对结果进行分组

我已经读过(这个),但是无法找到一种方法来实现它来解决我的具体问题.我知道SUM()是一个聚合函数,没有理由不使用它,但在这个特定的情况下,我必须SUM()保持每一行的所有结果.

这是表格:

--ID-- --amount--
  1        23
  2        11
  3        8
  4        7
Run Code Online (Sandbox Code Playgroud)

我需要SUM()金额,但保留每条记录,所以输出应该像:

--ID-- --amount--
  1        49
  2        49
  3        49
  4        49
Run Code Online (Sandbox Code Playgroud)

我有这个查询,但它只汇总每一行,而不是所有结果:

SELECT 
    a.id,
    SUM(b.amount)

FROM table1 as a 
JOIN table1 as b ON a.id = b.id
GROUP BY id
Run Code Online (Sandbox Code Playgroud)

没有SUM()它只会返回一行,但我需要维护所有ID ...

注意:是的,这是一个非常基本的例子,我可以使用php在这里执行此操作,但显然表格更大,行和列更多,但这不是重点.

mysql sum

18
推荐指数
3
解决办法
4万
查看次数

为复杂项目加载Ajax

我的问题实际上不是ajax加载本身,更多的是没有javascript加载它的能力.我的意思是,我应付自如,当我编写我的整个项目基于Ajax的可用性 只是不使用Ajax.

//编辑:尽管Arend已经有了或多或少的有效答案,但同时"这个问题没有直接答案".但是,我想看看像我这样的场景开发人员的其他一些方法!即使只是一些链接可以帮助!

基本上我只是感到沮丧,在同一页面上编码所有内容两次,以确保没有和启用Javascript的用户都有相同的体验.这很烦人,我总是想知道其他人如何解决这个问题.

当我更新例如两个依赖于相同变量的div时,它会变得混乱.这是一个例子:

非JS版本

require 'classobject.class.php';
$another_var = 'something';
$class = new classobject($_POST['variable']); // just an example to show that this is dynamic - I'm aware of injection!
$function = $class->returnsth(); // returns 1

if(isset($_POST)) {
    echo '<div id="one">Module 1 says:'; $require 'module_one.php'; echo '</div>';
    echo '<br /><br />';
    echo '<div id="two">Module 2 says:'; $require 'module_two.php'; echo '</div>';
}
Run Code Online (Sandbox Code Playgroud)

现在我module_two.phpmodule_two.php我的代码执行不同取决于$ function的返回变量.喜欢:

if($function >= 1 && another_var != 'something') {
   // …
Run Code Online (Sandbox Code Playgroud)

php ajax jquery asynchronous page-refresh

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

让jQuery在一行中向左+向右滑动2个对象

我有一个小功能,可以通过滑动效果从左到右切换我的内容.不幸的是,由于它们的大小而导致的两个div物体inline-block在滑动时不会彼此对齐,但是其中一个物体显然总是在另一个物体之下.

请在此处查看jsfiddle代码

我尝试了以下方法:

  • 设置一个float:left没有任何帮助
  • 定位div绝对值,这有助于在从右向左滑动时产生一些意想不到的行为(自己动手)
  • 延迟/排队动画,有效,但不是真正用户友好的延迟

我还想提一下,当您希望对象全部居中时,浮动和不同的定位不是很有用,所以我更喜欢另一种解决方案.

也许你们有一个想法,我怎么能让它变得平滑,以便div物体保持一条线?

css jquery slide

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

标签 统计

jquery ×3

php ×2

ajax ×1

asynchronous ×1

callback ×1

css ×1

mysql ×1

page-refresh ×1

slide ×1

strtotime ×1

sum ×1