我完全不解.为什么这个程序没有使用我得到的延迟编号,我将其命名为"结果".它应该按用户发布的未来日期减去当前时间.这最终会成为一种警报.看看,运行代码.
// Set a future time you want the alert() function to go off
var eta_ms = new Date(2017, 1, 26, 17, 06).getTime();
document.write(Date.now() + "<br />");
document.write(eta_ms + "<br />");
var result = eta_ms - Date.now();
document.write("The Delay: " + result + "<br />" );
document.write(result + "<br />");
document.write(typeof (result) + "<br />");
setTimeout(function(){ alert("Hello"); }, result);Run Code Online (Sandbox Code Playgroud)
我如何才能在 CSS 中而不是 JS 中获取每个数组并对其进行不同的样式?
count = ['1','2','3','4'];
container = document.getElementById('itemsContainer');
for(i = 0; i < count.length; i++){
container.innerHTML+='<div class="items"></div>';
}
var square= document.getElementsByClassName('items')[2];
square.style.backgroundColor='red';Run Code Online (Sandbox Code Playgroud)
.items{
margin-top:10px;
width:20px;
height:20px;
background:gold;Run Code Online (Sandbox Code Playgroud)
<div id="itemsContainer"></div>Run Code Online (Sandbox Code Playgroud)
我有一个由jQuery/JS填充的输入.目前它使用这样的日期值填充输入,2017-3-7但我希望它是2017-03-07.
我在这里有一个jsfiddle:https://jsfiddle.net/ua8rngzw/
代码如下:
(function ($) {
$(document).ready(function() {
var now = new Date();
var created = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate();
$('#created').val(created);
});
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
做这种事最简单快捷的方法是什么?
我想设置用户可以在文本框中键入的最大单词数,而不是字符数而是单词数.
这个有可能?
我做了一些挖掘并发现如何使用正则表达式获得用户输入的单词数量,但我不知道如何阻止用户在达到最大值后输入更多字母
var jobValue = document.getElementsById('textBox1').value
var words = jobValue.value.match(/\S+/g).length;
if(words>=2){
//stop inputs
}
Run Code Online (Sandbox Code Playgroud)
PS.
我想将单词数限制为2.
function wordLimit(){
var jobValue = document.getElementById('wordIntent').value
var words = jobValue.value.split(/\s+/);
var maxWords = 2;
var numWords = words.length;
if(numWords > maxWords){
jobValue.preventDefault();
}
}Run Code Online (Sandbox Code Playgroud)
<input type="text" id="wordIntent" onkeydown="wordLimit()" > Run Code Online (Sandbox Code Playgroud)
我试图通过JavaScript点击元素中的所有隐藏类.这是我用来尝试这样做的虚拟代码:
<style>
.hidden {display:none;}
</style>
<div>Value 1</div>
<div class="hidden">Value 2</div>
<div class="hidden">Value 3</div>
<div class="hidden">Value 4</div>
<button onclick="removeHidden()">Show All</button>
<script>
function removeHidden()
{
var hidden = document.getElementsByClassName("hidden");
for(var i=0; i<hidden.length; i++)
{
hidden[i].classList.remove("hidden");
}
}
</script>Run Code Online (Sandbox Code Playgroud)
单击按钮时,我希望删除所有类"隐藏",但奇怪的是,它会从第二个div和第四个div中删除隐藏的类,但会跳过第三个.
我得到的结果是:
Value 1
Value 2
Value 4
Run Code Online (Sandbox Code Playgroud)
知道为什么那是因为我真的不明白吗?
我也尝试过这段代码但结果相同:
var els = document.getElementsByClassName("hidden");
Array.prototype.forEach.call(els, function(el) {
el.ClassList.remove("hidden");
});
Run Code Online (Sandbox Code Playgroud) 如此简单的CSS可以在焦点对准输入时显示div:
.ulclass {
background: #f0a;
display: none;
height: 200px;
width: 200px;
}
form:focus-within + ul.ulclass {
display: block;
}Run Code Online (Sandbox Code Playgroud)
<form>
<input type="text" value="Enter some text here" class="inputclass">
</form>
<ul class="ulclass">
<a href="https://google.com">link</a>
</ul>Run Code Online (Sandbox Code Playgroud)
我在所显示的div内有一个链接,但是我无法单击它,因为这样做会在触发链接之前模糊输入字段。有人对如何更好地做到这一点有任何建议吗?
互联网上有很多文章建议使用 Web Worker 加载图像以提高性能并释放主线程。(谷歌搜索)
但我找不到任何实际的参考资料说图像标签实际上阻塞了主线程。
我认为浏览器足够智能,可以识别图像标签并理解它无论如何都必须渲染它。这是一种常见的情况。因此,浏览器不需要我们为这个常见问题添加新的 Web Worker,而是可以使用单独的进程/线程/事物以不会阻塞主线程的方式来解决这个问题。
本文描述了
有趣的事实:
<img>标签实际上会阻止您的应用程序加载。如果页面上有 100 个图像,浏览器将在呈现页面之前下载所有 100 个图像。
我无法理解这一点。我认为添加loading="lazy"比网络工作者的工作更好。
我正在尝试创建一个基本的JavaScript下拉菜单.我正在切换一个名为"show"的类,它显示下拉内容.它不起作用 - 即使在应用类之后元素仍保持隐藏状态.
我想我在这里有一个错误,但我似乎无法找到它.救命!
function drop() {
document.getElementById('content').classList.toggle('show');
}Run Code Online (Sandbox Code Playgroud)
.container {
display: inline-block;
position: relative;
}
.dropdown_btn {
color: white;
background-color: black;
cursor: pointer;
padding: 20px;
}
.dropdown_btn:hover, .dropdown_btn:focus {
background-color: grey;
}
#content {
display: none;
position: absolute;
background: grey;
color: white;
width: 160px;
}
.container a {
text-decoration: none;
display: block;
padding: 10px;
color: white;
}
.container a:hover {
background-color: #f1f1f1
}
.show {
display: block;
}Run Code Online (Sandbox Code Playgroud)
<div class="container">
<button class="dropdown_btn" onclick="drop()">Menu</button>
<div id="content">
<a href="">Link 1</a>
<a …Run Code Online (Sandbox Code Playgroud)我在header.php文件中声明了JavaScript中的全局变量,但是在footer.php文件中无法访问它
码:
header.php文件
<?php define('BASE_URL','https://example.com'); ?>
<!DOCTYPE html>
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascipt">
var baseUrl = { url:"<?php echo BASE_URL; ?>" };
</script>
<meta charset="utf-8"/>
</head>
<body>
Run Code Online (Sandbox Code Playgroud)
的index.php
<?php
require_once("templates/header.php");
require_once("templates/footer.php");
Run Code Online (Sandbox Code Playgroud)
footer.php
<script type="text/javascript">
alert(baseUrl.url);
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
在这里,我尝试访问footer.php文件中的baseUrl变量,但是我收到此错误
未捕获的ReferenceError:未定义baseUrl
寻求帮助!
有什么方法可以禁用键盘选项卡焦点吗?
我只是想在键盘选项卡时跳过焦点到“bbb”。
<a href="#">aaa</a>
<a href="#" tab-index="-1">bbb</a>
<a href="#">ccc</a>
<a href="#">ddd</a>
Run Code Online (Sandbox Code Playgroud)