我用Google搜索这个网站,但没有运气。我只想要一个简单明确的答案。
这是我的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
答案 0 :(得分:2)
变量不包含您期望的操作。代码不保存在变量中,它立即执行,css
方法(jQuery对象)的返回值存储在变量中。
您不能在变量中放置“宏”并通过引用变量来执行它。你要做的最接近的事情是将代码放在一个函数中,以便以后执行:
var bgSet = function() {
$(hmnavUL).css({ backgroundColor: bgDefault });
});
// Layout 1
$('#default').click(function() {
if('true' == 'true') {
// General Values
bgSet();
}
});
答案 1 :(得分:0)
看起来你想根据click
eventHandler切换和元素的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选择器,函数和变量的工作原理。虽然你的问题是用StackOverflow的一种迟钝的方式表达的,但我感谢你发布了你的代码并且你正在努力学习。 :)