我有一个按钮,我希望HTML和font-awesome图标在奇数次点击时更改,并恢复偶数次点击.
例如,我有一个名为的按钮mute.如果用户点击该按钮,我希望html更改为unmute和要替换的font-awesome类.如果用户再次单击该按钮,我希望按钮恢复为mute依此类推,依此类推.
此代码应该有效,它确实会更改URL和类.但它没有添加字体 - 真棒初始化类fa.
当我检查元素时,我得到了这个
<button id="mute" class="btn btn-primary fa-volume-off"> Mute</button>
Run Code Online (Sandbox Code Playgroud)
使用JQuery的addClass方法,您可以通过用空格分隔多个类来添加它们.基于此,元素应该是这个
<button id="mute" class="btn btn-primary fa fa-volume-off"> Mute</button>
Run Code Online (Sandbox Code Playgroud)
这是我的代码
var clicks = 0;
$("#mute").click(function() {
clicks += 1;
if (clicks % 2 === 1) {
$(this).html(" Un-mute");
$(this).addClass("fa fa-volume-up");
$(this).removeClass("fa fa-volume-off");
apiswf.rdio_setVolume(0);
}
else {
$(this).html(" Mute");
$(this).addClass("fa fa-volume-off");
$(this).removeClass("fa fa-volume-up");
apiswf.rdio_setVolume(100);
}
});
Run Code Online (Sandbox Code Playgroud)
我不明白为什么fa班级没有被添加.
我在网上找到了一个有趣的JavaScript问题.这是+!{}[0]平等的吗?
答案真的让我感到惊讶,原来是1.
现在我试图理解为什么这种语法会导致这种情况.
这就是我试图打破它的原因
!{} 回报 false
false[0] 回报 undefined
+false[0] 回报 NaN
所以我无法理解为什么上述表达会返回1.任何理论?
我有一个在 javascript 中动态创建的表。
编辑:创建表的示例代码在这里:
我需要在两列之间添加间距(例如 50px)。我读过最好的方法是在第一列的右侧添加填充,但我不确定如何使用表的类名在 javascript 中将间距添加到第一列?
我添加了原始答案中提供的 CSS,如下所示:
.informationWindowTable > tr > td:first-child {padding-right:50px;}
但它没有应用于表格,这就是为什么我要求用 javascript 提供解决方案。如何确保CSS仅在创建表后才被调用?
当这不像我预期的那样工作时,我变得很好奇:
var = "foo"
case var.class
when String
puts "bar"
else
puts "baz"
=> "baz"
Run Code Online (Sandbox Code Playgroud)
我理解case语句正在使用===,但我不明白是什么===.文件说......
Case Equality - 对于Object类,实际上与调用#==相同,但通常由后代重写,以在case语句中提供有意义的语义.
http://ruby-doc.org/core-2.2.3/Object.html#method-i-3D-3D-3D
这是否意味着===在Class(或其中一个模块)中覆盖===Object?我糊涂了.
我puts _|_对Ruby的工作原理感到困惑.如果键入变量然后调用该语句
3
puts _|_
Run Code Online (Sandbox Code Playgroud)
你得到变量的名称后跟nil
3
=> nil
Run Code Online (Sandbox Code Playgroud)
但是,如果再次输入,则会出现错误
puts _|_
=> false
Run Code Online (Sandbox Code Playgroud)
它似乎不像以美元符号开头的Perl类变量之一.
这个奇怪的符号在世界上是什么意思,它是如何运作的?
我有一个div我想隐藏所有的东西children.我认为一个简单的方法selector.hide()可以做到,但它仍然存在.
HTML
<div class="row well">
<div class="artistAlbumInfo well col-md-6 ">
<h3><span id="artist"></span> - <span id="track"></span></h3>
<img src="" id="art" class="albumArt">
</div>
<div class="col-md-6">
<h3 id="album"></h3>
<h4>Playstate <p id="playState"></p></h4>
<h4>Position <p id="position"></p></h4>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
JQuery的
$(document).ready(function() {
$('.row .well').hide();
});
Run Code Online (Sandbox Code Playgroud)
http://jsfiddle.net/375c8v2a/1/
有任何想法吗?
我正在努力寻找一个合理的解决方案。我需要替换以下字符:?¹²³?????? 使用正则表达式替换。我认为您会这样做:
item = item.replace(/[?¹²³??????]/g, '');
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试这样做时,notepad ++会将符号5-9转换为常规脚本编号。我意识到这可能与我正在使用的编码格式有关,我将其设置为ANSI。
我从来没有真正了解过各种编码格式之间的区别。但是我想知道是否有解决此问题的简便方法?
我有问题ng-options.我无法摆脱ng-options选择中的空白选项.
我有两个选择对象,都有一个ng-options.第二个选择的显示选项基于第一个选项.当我更改第一个选择的选项时,第二个选项最初显示一个空白选项.
我尝试了几种解决方案,但无法修复它.
我的目标:
$scope.mySpecs = {
"1": {
"name": "Name 1",
"options": {
"1": "option 1",
"2": "option 2",
"3": "option 3"
}
},
"5": {
"name": "Name 5",
"options": {
"6": "option 6",
"7": "option 7",
"8": "option 8"
}
}
};
Run Code Online (Sandbox Code Playgroud)
我的两个选择:
<select ng-model="selectedSpecs.name" ng-options="k as v.name for (k, v) in mySpecs" ng-change="setVals()">
</select>
<select ng-model="selectedSpecs.option" ng-options="k as v for (k, v) in mySpecs[selectedSpecs.name].options"></select>
Run Code Online (Sandbox Code Playgroud)
这是一个小提琴:
https://jsfiddle.net/byvpx7mn/3/
谢谢你的帮助!
对于MongoDB中的ObjectId,我使用24位十六进制数.因为我需要跟踪第二个集合,所以我需要在这个十六进制数字上加1.
就我而言,这是我的价值
var value = "55a98f19b27585d81922ba0b"
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是
var newValue = "55a98f19b25785d81922ba0c"
Run Code Online (Sandbox Code Playgroud)
我试图为此创建一个函数
function hexPlusOne(hex) {
var num = (("0x" + hex) / 1) + 1;
return num.toString(16);
}
Run Code Online (Sandbox Code Playgroud)
这适用于较小的十六进制数
hexPlusOne("eeefab")
=> "eeefac"
Run Code Online (Sandbox Code Playgroud)
但是我的哈希失败了
hexPlusOne(value)
=> "55a98f19b275840000000000"
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来解决这个问题?
今天在关于JS的演讲中,我们(学生)被告知在JavaScript中,一切都是对象.例如,提供了以下代码:
// functions are objects
function aFunction(a, b) {
// do something
};
console.log(aFunction.name); // aFunction
Run Code Online (Sandbox Code Playgroud)
我发现这很有趣,并决定尝试声明的函数var funcName = function(...将以相同的方式行事.它没有:
function aFunction(a, b) {
return a + b;
}
var bFunction = function(a, b) {
return a + b;
};
console.log(aFunction.name); // aFunction
console.log(bFunction.name); // empty string
Run Code Online (Sandbox Code Playgroud)
为什么?
javascript ×7
jquery ×3
css ×2
html ×2
ruby ×2
string ×2
addclass ×1
angularjs ×1
boolean ×1
coercion ×1
equality ×1
font-awesome ×1
function ×1
hex ×1
irb ×1
largenumber ×1
mongodb ×1
ng-options ×1
object ×1
puts ×1
regex ×1
superscript ×1
unicode ×1