我正在尝试JS中的一些非常简单的东西,但我不能让它工作......
我想点击一个div来向另一个div添加一个负余量 - 但我希望每次点击div时都会发生这种情况,不仅仅是现在的一次。 Eveytime我点击我的#next_nav,我希望#nav从10px负数移动。 这里只能工作一次。 这是我的js:
$(function() {
$('#next_nav').click(function () {
$( "#nav" ).css('margin-left','-10px');
});
});
和我的HTML:
<div id="next_nav"></div>
<div id="nav"></div>
这是我的JSfiddle:http://jsfiddle.net/Beyzd/
任何人都可以帮我这个吗? 非常感谢,
答案 0 :(得分:12)
在您的值前添加=
:
$(function() {
$('#next_nav').click(function() {
$('#nav').css('margin-left', '-=10px');
});
});
<强> Working Fiddle 强>
修改强>
如果要为其设置动画,请使用animate()
方法。这是fiddle给你的。
答案 1 :(得分:1)
你可以试试这个
var pixels=0;
$(function() {
$('#next_nav').click(function () {
pixels=pixels-10;
$( "#nav" ).css('margin-left',pixels);
});
});
答案 2 :(得分:1)
检查jsFiddle
$(document).ready(function (){
$("#next_nav").on("click", function() {
var $left = $("#nav").css('margin-left');
var $newval = (parseInt($left) - 10) + "px";
$("#nav").css ({
'margin-left' : $newval
});
});
});
答案 3 :(得分:0)
$(function() {
var count=0;
$('#next_nav').click(function () {
count-=10;
$( "#nav" ).css('margin-left',count);
});
});
并包含jQuery
答案 4 :(得分:0)
为您修复: Updated version
将.css('margin-left','-10px');
修改为.css({'margin-left' : '-10px'});
答案 5 :(得分:0)
试试这个:
$(function() {
$('#next_nav').click(function () {
marginleft=parseInt($( "#nav" ).css('margin-left').replace('px',''));
$( "#nav" ).css('margin-left',marginleft-10+'px');
});
});
<强> Working Fiddle 强>
答案 6 :(得分:0)
只需更改此$( "#nav" ).css('margin-left','-=10px');