Javascript Meteor与JQuery或动画的交互
所以基本上,我正在Meteor中构建一个应用程序,我的左导航栏位于一个Javascript Meteor与JQuery或动画的交互,javascript,jquery,html,css,meteor,Javascript,Jquery,Html,Css,Meteor,所以基本上,我正在Meteor中构建一个应用程序,我的左导航栏位于一个位置:fixed和left:-300px并希望将其滑动到left:300px,但不知道如何在Meteor中设置过渡动画(某种程度上是jquery中的幻灯片过渡)。我理解JQuery的基本方面,但由于某种原因,当我将它放在脚本的if Meteor.isClient方面时,它似乎不起作用。请记住,我是Meteor的新手,非常感谢包含在内的javascript代码 我目前的代码如下 HTML 这就是我提出的解决方案,似乎是可行的。
位置:fixed
和left:-300px
并希望将其滑动到left:300px
,但不知道如何在Meteor中设置过渡动画(某种程度上是jquery中的幻灯片过渡)。我理解JQuery的基本方面,但由于某种原因,当我将它放在脚本的if Meteor.isClient方面时,它似乎不起作用。请记住,我是Meteor的新手,非常感谢包含在内的javascript代码
我目前的代码如下
HTML
这就是我提出的解决方案,似乎是可行的。 我在Meteor.isClient中创建了一个角度模块,看起来效果不错
if (Meteor.isClient) {
angular.module('sidebar',['angular-meteor']);
angular.module('sidebar').controller('SidebarCtrl', ['$scope',
function ($scope) {
function Menu (callback){
$('.menubutton').on('click', function (){
$('.leftnav').css({"box-shadow" : "2px 2px 2px #888888"});
$('.leftnav').animate({left : "0px"}, 500, function(){
$('.main').click(function() {
$('.leftnav').animate({left: "-302px"}, 500);
$('.leftnav').css({"box-shadow" : "none"});
});
$('.leftnav').click(function(event){
event.stopPropagation();
});
});
});
}
Menu();
}]);
}
你的JS目前看起来是什么样子?你的代码目前表现如何?我真的让它工作了!看起来这是因为我没有使用角度或模板。谢谢你的关心!如果你成功了,请发表你自己的答案。你的问题被提了出来,很明显人们对这个话题很好奇。
body{
margin: 0px 0px 0px 0px;
}
.navitem:hover{
background-color: #000066;
}
.main{
background-color: rgb(128,128,128);
height: 200vh;
width: 100vw;
margin: 0px 0px 0px 0px;
overflow-x:hidden;
}
.topmenu{
position: fixed;
z-index: 10;
top: 0px;
width: 100vw;
height: 50px;
background: white;
border-bottom: 2px lightgray solid;
}
.BanditDiv{
position: fixed;
top: 0px;
height: 50px;
width: 30vw;
margin-left: 35vw;
float: center;
}
.BanditName{
text-align: center;
font: 400 25px/1.3 'Berkshire Swash', Helvetica, sans-serif;
color: #000066;
}
.menubutton{
position: fixed;
top: 5px;
left: 5px;
height: 40px;
width: 40px;
border: 1px #cccccc solid;
background-color: white;
border-radius: 5px;
}
.menubutton:focus{
outline: 0;
}
.icon-bar1 {
position: fixed;
top: 15px;
left: 10px;
margin: 0px 0px 0px 0px;
display: block;
width: 30px;
height: 2px;
background-color: #cccccc;
border-radius: 1px;
}
.icon-bar2 {
position: fixed;
top: 25px;
left: 10px;
margin: 0px 0px 0px 0px;
display: block;
width: 30px;
height: 2px;
background-color: #cccccc;
border-radius: 1px;
}
.icon-bar3 {
position: fixed;
top: 35px;
left: 10px;
margin: 0px 0px 0px 0px;
display: block;
width: 30px;
height: 2px;
background-color: #cccccc;
border-radius: 1px;
}
.leftnav{
position: fixed;
top: 0px;
left: -300px;
width: 300px;
height: 100vh;
z-index: 9001;
background-color: yellow;
}
if (Meteor.isClient) {
angular.module('sidebar',['angular-meteor']);
angular.module('sidebar').controller('SidebarCtrl', ['$scope',
function ($scope) {
function Menu (callback){
$('.menubutton').on('click', function (){
$('.leftnav').css({"box-shadow" : "2px 2px 2px #888888"});
$('.leftnav').animate({left : "0px"}, 500, function(){
$('.main').click(function() {
$('.leftnav').animate({left: "-302px"}, 500);
$('.leftnav').css({"box-shadow" : "none"});
});
$('.leftnav').click(function(event){
event.stopPropagation();
});
});
});
}
Menu();
}]);
}