在变量中存储.css()方法
我已经Google搜索了这个网站,但没有运气。我只想要一个简单明了的答案。在变量中存储.css()方法
这里是我的HTML:
<div id="main-navigation">
<ul>
<li>
<a href="#">home</a>
</li>
</ul>
</div>
这里是CSS方法我用我已经测试和工程:
// Layout 1
$('#default').click(function() {
if('true' == 'true') {
// General Values
$(hmnavUL).css({ backgroundColor: bgDefault });
});
这里是我的变量已创建:
var bgSet = $(hmnavUL).css({ backgroundColor: bgDefault });
这里是我想要实现:
// Layout 1
$('#default').click(function() {
if('true' == 'true') {
// General Values
bgSet
});
结果:
浏览器中完全忽略了我的“bgSet”可变的,但是当我穿上它承认风格”不要使用变量。它不会给我任何错误,我的首选版本。任何你可以告诉我关于我的语法的东西将不胜感激。我假设这是我的语法。
我已经链接了一个照片示例来演示我期望的最终产品(注意:我现在还不能附加图像)。
(默认布局,第二布局,删除所有样式)
期望的结果:Result
它看起来像你想切换和基于click
事件处理元素的CSS属性。你有正确的想法,但你的JavaScript稍微偏离。下面是应该执行你想要的功能的例子:
// Function to change the css of an element
function makeRed(elem){
elem.css({ "background-color" : "red" });
};
// Attach an event handler..
$("#clickMe").click(function(){
// Store the object as a variable
var obj = $("#foo"); // <-- The element you want to change the bg of
// Run your function.
makeRed(obj);
});
#foo{
width: 50px;
height: 50px;
background-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.1/jquery.min.js"></script>
<div id="foo"></div><br />
<button id="clickMe">Click Me!</button>
这实际上是关于学习的选择,函数和变量是如何JavaScript的工作。虽然你的问题的措辞在排序的钝为*的方式,我很欣赏你发布你的代码,并且你正在尝试学习。 :)
我刚刚读了你最后的评论。我并不是故意隐瞒。我是JS新手,想确保我清楚自己想要什么。我几乎从来没有在这个网站上找到有用的答案,因为你的词汇超出了我的大声笑。 – 2014-11-22 01:59:36
钝了肯定比预期更严厉 - 抱歉:)。我认为自从你发布你的代码后,你不应该得到“downvoted”,并且(IMO)表明你是js的新手,试图学习和使用一个实际的例子来解决问题,而不是通过教程阅读。对于与js相关的问题,一个好的经验法则是:邮政编码可以在沙盒(或SO片段)中快速重新运行,例如http://jsfiddle.net/。最好。 – wahwahwah 2014-11-22 02:33:26
的变量不包含你希望它做什么。代码不保存在变量中,它会立即执行,并且方法(这是jQuery对象)的返回值存储在变量中。
您不能在变量中放入“宏”,并通过引用该变量来执行它。最接近的事到你正在尝试做的是把代码中的函数,因此,它可以在以后执行:
var bgSet = function() {
$(hmnavUL).css({ backgroundColor: bgDefault });
});
// Layout 1
$('#default').click(function() {
if('true' == 'true') {
// General Values
bgSet();
}
});
非常感谢你的工作,非常感谢你。 – 2014-11-22 01:50:02
'bgSet'是一个jQuery对象,因为您在声明'bgSet'时使用'.css()'作为设置器。你期待它成为什么? – charlietfl 2014-11-22 01:35:50
您的评论并不真正有用,但谢谢。 – 2014-11-22 01:50:26