Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery设置元素向左移动的动画_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript jQuery设置元素向左移动的动画

Javascript jQuery设置元素向左移动的动画,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在尝试设置元素移动的动画:left:0px,但似乎不起作用。我猜想问题在于元素不是绝对定位的,但是我如何使用动画来定位呢 fid: $(函数(){ var cheese=$('.ok').offset().top;//定义'hey'的顶部 // //当它到达页面的红色部分时设置动画 // $(窗口)。滚动(函数(){ 如果($(窗口).scrollTop()>=奶酪){ $('.ok').addClass('top'); $('.nice').hide().fadeIn().html('o

我正在尝试设置元素移动的动画:
left:0px
,但似乎不起作用。我猜想问题在于元素不是绝对定位的,但是我如何使用动画来定位呢

fid:

$(函数(){
var cheese=$('.ok').offset().top;//定义'hey'的顶部
//
//当它到达页面的红色部分时设置动画
//
$(窗口)。滚动(函数(){
如果($(窗口).scrollTop()>=奶酪){
$('.ok').addClass('top');
$('.nice').hide().fadeIn().html('ok');
$(“.nice”).animate({
左:“0”
}, 600);
$('.nice').addClass('maybe');
}
否则{
$('.ok').removeClass('top');
$('.nice').removeClass('maybe');
$('.nice').html('Hey');
}
});
//
//此部分不依赖于滚动事件,负责在“.ok”div上更改悬停。
//
$('.ok')。悬停(函数(){
if(!$(this.hasClass(“top”))
$(this.addClass('proj-hover');
},函数(){
$(this.removeClass('proj-hover');
});
//
//单击时设置动画
//
$('.ok')。单击(函数(){
如果($(窗口).scrollTop()>=奶酪){
}
否则{
$(“body,html”).animate({
scrollTop:$('.other').offset().top
}, 600);
}
});
});
*{
框大小:边框框;
}
正文,html{
填充:0;
保证金:0;
}
.分区{
高度:100vh;
宽度:100%;
背景:#6464FF;
}
.其他{
高度:1000px;
宽度:100%;
背景:#FF6161;
}
.好的{
位置:绝对位置;
底部:0;
左:50%;
左边距:-100px;
宽度:200px;
高度:50px;
线高:50px;
背景:黑色;
颜色:白色;
文本对齐:居中;
过渡:1s;
}
.顶{
位置:固定;
排名:0;
左:0;
过渡:.7s;
左边距:0px;
宽度:100%;
}
.项目悬停{
背景:白色;
颜色:黑色;
}
蓝先生{
背景:蓝色;
}
.很好{
转换:0s;
边际:0px;
}


不确定我是否理解你的问题。“ok”应该向左移动吗? 您已声明
宽度:100%在CSS类中
top
。所以它已经离开了。移除它,它就会工作

或者您可能希望在
.nice
类中:

position:absolute;
left:0; right:0;
margin: auto;
然后做一个

$(".nice").animate({ 
    right:"100%"
}, 600);

要将文本向左移动(以
文本对齐方式
属性为中心),必须更改容器的宽度。通过添加一些css并删除元素
nice
的jquery动画,我用CSS3制作了动画:

.nice {
  margin: 0px;
  width: 100%;
  transition: width .6s;
}

.maybe {
  width: 0;
}
以下是完整的代码:

$(函数(){
var cheese=$('.ok').offset().top;//定义'hey'的顶部
//
//当它到达页面的红色部分时设置动画
//
$(窗口)。滚动(函数(){
如果($(窗口).scrollTop()>=奶酪){
$('.ok').addClass('top');
//$(“.nice”)。制作动画({
//宽度:“0%”
//}css('溢出','');
$('.nice').addClass('maybe');
}否则{
$('.ok').removeClass('top');
$('.nice').removeClass('maybe');
$('.nice').html('Hey');
}
});
//
//此部分不依赖于滚动事件,负责在“.ok”div上更改悬停。
//
$('.ok')。悬停(函数(){
if(!$(this.hasClass(“top”))
$(this.addClass('proj-hover');
},函数(){
$(this.removeClass('proj-hover');
});
//
//单击时设置动画
//
$('.ok')。单击(函数(){
如果($(窗口).scrollTop()>=奶酪){
}否则{
$(“body,html”).animate({
scrollTop:$('.other').offset().top
}, 600);
}
});
});
*{
框大小:边框框;
}
身体,
html{
填充:0;
保证金:0;
}
.分区{
高度:100vh;
宽度:100%;
背景:#6464FF;
}
.其他{
高度:1000px;
宽度:100%;
背景:#FF6161;
}
.好的{
位置:绝对位置;
底部:0;
左:50%;
左边距:-100px;
宽度:200px;
高度:50px;
线高:50px;
背景:黑色;
颜色:白色;
文本对齐:居中;
过渡:1s;
}
.顶{
位置:固定;
排名:0;
左:0;
过渡:.7s;
左边距:0px;
宽度:100%;
}
.项目悬停{
背景:白色;
颜色:黑色;
}
蓝先生{
背景:蓝色;
}
.很好{
转换:0s;
边际:0px;
宽度:100%;
过渡:宽度为0.6s;
}
.也许吧{
宽度:0;
}


您正在尝试设置“跨度”的动画?你的代码中的
在哪里?我错了,我指的是段落。如果你不理解这个问题,请发表评论。