我在javascript中编写了一个小函数来从文本输入表单中获取用户输入以用作消失的延迟时间但是它失败了请帮助
<input type="text" class="form-control" id="new" placeholder="Fade Duration(milliseconds)"/>
var x = document.getElementById("new").value;
$(".fadeInbox").click(function () {
$("#section1").delay(x).fadeIn();
$("#section2").delay(x).fadeIn();
});
$(".fadeOutbox").click(function () {
$("#section1").delay(x).fadeOut();
$("#section2").delay(x).fadeOut();
});
答案 0 :(得分:1)
var x
的{p> input
是string
而不是int
,所以
var x = parseInt(document.getElementById("new").value);
...
或
var x = +document.getElementById("new").value;
...
答案 1 :(得分:0)
你应该把
var x = document.getElementById("new").value;
在函数内部,或者只在脚本加载后立即执行一次(并且不起作用)。
答案 2 :(得分:0)
应在函数内部检查延迟,否则仅在页面加载时检查一次值。如果它在函数内部,则每次触发函数时都会检查它。
$(".fadeInbox").click(function () {
var x = document.getElementById("new").value;
$("#section1").delay(x).fadeIn();
$("#section2").delay(x).fadeIn();
});
$(".fadeOutbox").click(function () {
var x = document.getElementById("new").value;
$("#section1").delay(x).fadeOut();
$("#section2").delay(x).fadeOut();
});