我正在编写一个简单的小下拉栏,它会在单击按钮时触发。我在工作 jsfiddle 中有它:http: //jsfiddle.net/sir_charles804/bC4WD/13/,但它不会在网站上运行。任何想法为什么?在网站上有 angularjs jQuery 和 bootstrap,所以我不确定其中之一是否会妨碍您。网站上的代码是
HTML
<div id="notificationBar">
Latest Major News Update
<button class="pull-right" style="position:relative;" id="hideButton" >notification </button>
</div>
<button class="pull-right notificationButton" id="showbutton">notification </button>
JS(现在在正文中定义用于测试)
var showNotifications = function () {
document.getElementById("notificationBar").style.marginTop = "-8px";
};
var hideNotifications = function () {
document.getElementById("notificationBar").style.marginTop = "-40px";
};
var showButton = document.getElementById('showButton');
var hideButton = document.getElementById('hideButton');
showButton.onclick = showNotifications;
hideButton.onclick = hideNotifications;
CSS(在外部工作表中)
#notificationBar {
display: block;
background-color: #cccccc;
color:black;
height: 30px;
width:100%;
z-index: 4;
padding:0px;
right:0px;
left:0px;
margin:0px;
position:absolute;
margin-top:-40px;
-webkit-transition:margin-top .5s ease-in-out;
-moz-transition:margin-top .5s ease-in-out;
-o-transition:margin-top .5s ease-in-out;
transition:margin-top .5s ease-in-out;
box-shadow:1px 0 3px rgba(0, 0, 0, .75);
}
看出什么问题了吗?
编辑:
如果我手动更改 css 以反映过渡,那么它就会出现,所以看来我的问题是访问 javascript 中的属性。您知道什么会导致我无法访问/更改style.marginTop
房产吗?或者为什么更改该属性不会导致更改边距?