【问题标题】:FadeTo not properly workingFadeTo 无法正常工作
【发布时间】:2014-08-01 03:57:11
【问题描述】:

我的小代码无法按我的意愿工作。我先把代码贴出来。

$(function() {

$(document).ready(function(){ 
    if( $( "#skillelementwithme" ).hasClass( "skillelement_collapsed" ) )
    {
        $( "#skillelementwithme" ).click(function() {
            $( "#skillelementwithme" ).toggleClass( "skillelement_active_withme", 500 );
            $( "#skillelementwithyou" ).fadeTo( 1000, 0 );
    });
    }
    else if (( "#skillelementwithme" ).hasClass( "skillelement_active_withme" ))
    {
        $( "#skillelementwithme" ).click(function() {
            $( "#skillelementwithme" ).toggleClass( "skillelement_collapsed", 500 );
            $( "#skillelementwithyou" ).fadeTo( 1000 , 1 );
    });
    }
})
});

现在虽然淡入透明效果非常好,但我无法让“skillelementwithyou”类淡入淡出变成不透明。也许我理解这些功能绝对有问题。我希望你们能帮助我。可能它只是很小的东西,我会恨自己。

【问题讨论】:

  • 离题:$(function() {$(document).ready(function(){ 相同。
  • 感谢您的小提示:3 我是初学者,所以每个建议都很有帮助
  • 另外,我不确定你的课程是做什么的,但我认为整个块可以简化为:pastie.org/9435030。你甚至可能不需要类切换语句。
  • 我很好奇,您在控制台中看到了什么(按 F12 在浏览器中启动开发者工具)?
  • 谢谢isherwood,它完全解决了我遇到的问题,我需要的类切换来完全改变第一类。它现在按我的想法工作!非常感谢。

标签: jquery jquery-ui fadeto


【解决方案1】:

http://jsfiddle.net/isherwood/pmX7z/

$(function () {
    $("#skillelementwithme").click(function () {
        $("#skillelementwithme")
            .toggleClass("skillelement_active_withme skillelement_collapsed");
        $("#skillelementwithyou").fadeToggle();
    });
});

你的一些错误:

$(function() {$(document).ready(function(){ 基本相同,所以你可以去掉一个。

( "#skillelementwithme" ) 是一个无效的选择器(您缺少 jQuery 对象引用 $)。

click() 包装在if 语句中。在 JS 解析时,if 将被读取,返回 true 的部分将允许访问包含的 .click() 函数,而另一个 (false) 将被忽略且永远无法访问。反之亦然(在click 处理程序中传递if 逻辑)有助于在检查每个点击事件的语句时保持事件活跃。

.toggleClass( "skillelement_collapsed", 500 );toggleClass 不接受 time 参数。这不是动画。

【讨论】:

    猜你喜欢
    • 2021-01-21
    • 2012-06-29
    • 1970-01-01
    • 2023-03-17
    • 2016-12-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-01
    • 2012-07-11
    相关资源
    最近更新 更多