jquery.rotate.js库中的rotate函数怎么用。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery.rotate.js库中的rotate函数怎么用。相关的知识,希望对你有一定的参考价值。

这是一个让图片旋转的函数,rotate里输入角度,可是我发现只有90度的时候图片才围绕自己的中心旋转(正方形图片),如果换成其他度数就不行了,我找半天也没看出来是绕着那个点旋转。请问怎样才能让其在任意度数下饶中心旋转

    rotate是jQuery旋转rotate插件,支持Internet Explorer 6.0+ 、Firefox 2.0 、Safari 3 、Opera 9 、Google Chrome,高级浏览器下使用Transform,低版本ie使用VML实现。

    rotate(angle)angle参数:[Number] – 默认为 0

根据给定的角度旋转图片例如:
$(“#img”).rotate(45);或 $(‘#img’).rotate(angle:45)

rotate(parameters)parameters参数:[Object] 包含旋转参数的对象。

支持的属性:

1.angle属性:[Number] – default 0 – 旋转的角度数,并且立即执行

例如:1$(“#img”).rotate(angle:45);

2.bind属性:[Object] 对象,包含绑定到一个旋转对象的事件。事件内部的$(this)指向旋转对象-这样可以在内部链式调用- $(this).rotate(…)。

例如 (click on arrow):
$(“#img”).rotate(bind:
    click: function()
            $(this).rotate(
                angle: 0,
                animateTo:180
            )
          
       
);

3.animateTo属性:[Number] – default 0 – 从当前角度值动画旋转到给定的角度值 (或给定的角度参数)


4.duration属性:[Number] – 指定使用animateTo的动画执行持续时间

例如 (click on arrow):
$(“#img”).rotate(bind:
    click: function()
        $(this).rotate(
            duration:6000,
            angle: 0,
            animateTo:100
        )
    
   
);

5. step属性:[Function] – 每个动画步骤中执行的回调函数,当前角度值作为该函数的第一个参数


6.  easing属性:[Function] – 默认 (see below) 

默认:function (x, t, b, c, d)  return -c * ((t=t/d-1)*t*t*t - 1) + b;

Where:

t: current time,

b: begInnIng value,

c: change In value,

d: duration,

x: unused

没有渐变:No easing (linear easing):function(x, t, b, c, d)  return (t/d)*c ;

         

示例1:没有效果,一直转
 $("#scImg").rotate(
                              angle:0,
                              animateTo:360,
                              callback: rotation,
                                easing: function (x,t,b,c,d)     
                                      return (t/d)*c ;
                             
                      );

       

示例2: 默认的效果
         $("#scImg").rotate(
                              angle:0,
                              animateTo:360,
                              callback: rotation,
                              easing: function (x,t,b,c,d)
return -c*((t=t/d-1)*t*t*t-1)+b ;
                             
                      );示例3:
$(“#img”).rotate(bind:
    click: function()
        $(this).rotate(
            angle: 0,
            animateTo:180,
            easing: $.easing.easeInOutElastic
            )
        
    
);


7.callback属性:[Function] 动画完成时执行的回调函数

例如

$(“#img”).rotate(bind:
    click: function()
        $(this).rotate(
            angle: 0,
            animateTo:180,
            callback: function() alert(1) 
            )
        
    
);

8. getRotateAngle这个函数只是简单地返回旋转对象当前的角度。

例如:
$(“#img”).rotate(
    angle: 45,
    bind: 
        click : function()
        alert($(this).getRotateAngle());
        
    
);

9.stopRotate这个函数只是简单地停止正在进行的旋转动画。例如:

$(“#img”).rotate(
    bind: 
        click: function()
            $(“#img”).rotate(
                angle: 0,
                animateTo: 180,
                duration: 6000
            );
        setTimeout(function()
            $(“#img”).stopRotate();
            , 1000);
        
    
);
参考技术A

你好!!

 

不知道你的那个jquery.rotate.js是什么版本了?

新版本的用法也不是很复杂,如下:

$(function()
    $("#rotate-img").click(function()//click事件,每点击一次,顺时针旋转45°.
        //图片旋转,通过$.animate()方法
        $(this).animate(
            rotate:"+=45deg"  //为rotate属性赋值,注意:deg为角度单位
        ,'slow');
    );
);

参考技术B 以中心竖轴线为基准旋转。
$(obj).rotate(30); //即正上向右偏转30度

使用 Clean Architecture 从 ApplicationCore 库中的实体引用 Infrastructure 库中的 ApplicationUser

【中文标题】使用 Clean Architecture 从 ApplicationCore 库中的实体引用 Infrastructure 库中的 ApplicationUser【英文标题】:Referencing ApplicationUser in the Infrastructure library from an entity in the ApplicationCore library using Clean Architecture 【发布时间】:2019-05-08 20:57:13 【问题描述】:

我正在关注Microsoft Architecture Guide 创建一个 ASP.NET Core Web 应用程序。

该指南实现了非常简单的干净架构模式。

如果您查看使用干净架构模式的示例项目,您会看到有一个包含 ApplicationUser.cs 类的 Infrastructure/Identity 文件夹。

我的问题: 我正在使用实体框架,我在 ApplicationCore 类库中的一个业务实体需要包含一个 ApplicationUser 列表。 ApplicationCore 库不应引用任何其他项目。它包含所有接口和业务实体。如何在我的 Infrastructure/Identity 项目中保留 ApplicationUser 类,并且仍然在 ApplicationCore 项目中的一个业务实体中使用它而不违反规则。

我知道一种解决方案是不在我的基础架构项目中存储 ApplicationUser 实体。但是,我觉得它应该存在,因为它在实现 IdentityUser 时将始终依赖于 Identity。

【问题讨论】:

它在基础设施中,因为 ApplicationUser 继承了 IdentityUser 的形式,即 身份验证,身份验证是基础设施问题。您永远不应该将身份验证放入您的核心域,因为(几乎)世界上没有任何企业拥有User 无处不在的语言、流程等。当您拥有一家商店时,您就拥有了客户,但没有用户。用户是一个技术术语。用户可能与客户相关(即用户 ID 和客户 ID 可能相同或通过 1:1 或 n:1 关系连接)。因为可以删除或阻止用户,但保留客户 另请参阅 GitHub 上的 this issue 以了解它的说明。您应该记住,eShopOnContainers 不仅是一个干净的架构,还涉及领域驱动设计和使用无处不在的语言的 ddd 等主题(这是公司的领域专家所说的,比如销售人员、市场营销、不是软件开发人员)是必要的。从技术上讲,用户只是识别/验证用户身份的一种手段,因此客户永远不会与用户相同 因为您知道,当通过传真或电话接受订单时,您可以拥有没有登录的客户 【参考方案1】:

用户是一个实体,它应该在核心层。

但您不应在核心层中使用 ApplicationUser : IdentityUser,因为它与 ASP.NET 标识相关联。核心层不应该知道哪些技术将实现该领域。

如果明天您想使用另一个库进行用户管理怎么办?这不是核心层关心的问题。

您可以做的是在核心层使用接口或基本用户类,让基础设施层担心库选择决策。

【讨论】:

怎么会有人这样做?? ApplicationUser 是实体,所以它应该在核心中(我同意),但如果我不这样做,它必须扩展 IdentityUser 原因,所以我不能在 AspIdentityDbContext 中使用它......我意识到如果你正在处理的问题对于任何具有 DbContext(如 AspCore.Identity 或 IdentityServer4)的包,您最终将在核心中引用这些包,因为最终您将使用它们的实体作为核心实体的一部分,否则您甚至无法使用核心实体进行迁移跨度> 【参考方案2】:

在清洁架构中:

应用程序核心类型

• 实体(持久化的业务模型类)和聚合

• 接口

• 服务

• DTO

• 规格

• 例外情况

基础设施类型

• EF Core 类型(DbContext、迁移)

• 数据访问实现类型(存储库)

• 特定于基础架构的服务(FileLogger、SmtpNotifier 等)

所以 ApplicationUser.cs 是一个实体,它应该在 Application Core 中

【讨论】:

Microsoft 编写了有关清洁架构的完整手册,并在我上面的链接中提供了一个示例项目来引用它,并且他们在 Infrastructure 项目中抛出了 ApplicationUser 类。知道为什么吗? 所以在 ApplicationCore 项目中拥有 ApplicationUser 并安装 Microsoft.AspNetCore.Identity.EntityFrameworkCore 以便它可以从 IdentityUser 继承没有任何问题? 我的意思是,如果您使用 ApplicationUser.cs 作为持久实体,您会将其移至 Application Core。 在 eShop 示例中,他们将 ApplicationUser.cs 放在基础架构中,我认为这是不正确的。让我们向社区询问这个 投反对票,因为我认为它不能回答问题。【参考方案3】:

这也是我自己的问题,它似乎以某种方式基于意见。我最终得出结论,如果您依赖于其中指定了 DbContext 的任何包,那么您将在您的核心项目中引用此包。

例如,我正在使用 AspCore.Identity 和 IdentityServer4,我有很多 DbContexts,但现在让我们说两个:

ConfigurationDbContextIdentityDbContext 以及这两个上下文控制两个实体(只是为了让事情变得更容易)客户端(OAuth2 客户端)和 IdentityUser 所以现在我已经将所有这些作为基础设施,但现在我想拥有我的自己的核心实体 ApplicationUser 和 ApplcationClient 那么我怎样才能将它们放在我的核心中而不让它们继承他们的父母,这样我就可以查询它们,保存它们或从任何来源检索它们。

我不知道完美的答案,但我最终将这些实体放在核心中并在我的核心中引用 NuGet 包,这显然不遵循干净的架构角色,但我找不到比这更好的解决方案那个。

【讨论】:

以上是关于jquery.rotate.js库中的rotate函数怎么用。的主要内容,如果未能解决你的问题,请参考以下文章

canvas ctx.rotate()

hammer.js中的rotate旋转事件为啥没有效果

leetcode 153. Find Minimum in Rotated Sorted Array 寻找旋转排序数组中的最小值(中)

CSS transform中的rotate的旋转中心怎么设置?

CSS transform中的rotate的旋转中心怎么设置?

LeetCode 189. Rotate Array