我正在开发一个JavaScript日期不够大的项目.
我想在同一时间轴上放置多个事件,其中一些有月和日,有些没有,所以只使用年份不是一个选项.我希望能够让登月和大爆炸在同一轴上.
如果我可以使用现有Date对象具有的功能,那将会有很大帮助.它只能追溯到27万年前,我需要一路回到大爆炸(13800,000,000年前).我不需要日期包含秒或毫秒.
如何扩展Date对象以包含此类日期的表示?
我试图为此找到库或本机函数,但没有运气.我也开始寻找我可以修改的Date对象的JavaScript实现,但我也没有运气.
更新:
我从remdevtec解决方案开始,但最终修改了很多.我希望日期以数字顺序排列,以便更轻松地对日期进行排序和排序.
所以我所做的是,如果年份在-100,000之前,我将毫秒值视为小时.这是我到目前为止所做的,它适用于我们的项目,但如果我有更多的时间,我会清理它并把它放在github上.
function BigDate(date){
if(!date){
this.original = new Date();
}else if(date instanceof BigDate){
this.original = date.original;
}else{
this.original = new Date(date);
}
this.yearBreakpoint = -100000;
this.breakPoint = Date.UTC(this.yearBreakpoint,0,0).valueOf();
this.factor = 360000;//needed for our project to make extra space on our axis
}
BigDate.UTC = function (year, month, day, hour, minute, second, millisecond) {
var temp = new BigDate();
if(year < -temp.yearBreakpoint){
temp.setUTCFullYear(year);
return temp;
}else{
temp.original = Date.UTC(year,month,day,hour,minute,second,millisecond);
}
return temp.valueOf();
};
BigDate.now …Run Code Online (Sandbox Code Playgroud)使用JQuery Mobile我有一个从数据库动态填充的选择框.截至目前,此复选框的人口正在完美运行.我添加了一个功能,其中包含一个通过"点击"事件调用功能的按钮.此功能的作用是知道是否已填充此特定复选框; 如果它没有那么它根本不会做任何事情,但否则它会顺利运行.我的问题是确定这个选择框是否为空.
这是我正在处理的一个非常简单的例子:
<li>
<label for="fruit_name">Fruit</label>
<select name="some_fruit" id="fruit_name" onclick="populate_box('fruit', this);">
</select>
</li>
Run Code Online (Sandbox Code Playgroud)
我的函数,从一个单独的按钮调用,如下所示:
function isSelextBoxEmpty(selectBoxId) {
var selected_value = $('#fruit_name');
/* More options... still testing the proper way:
var selected_value = $('#fruit_name').text;
var selected_value = $('#fruit_name').value;
var selected_value = $('#fruit_name').length;
var selected_value = $('#fruit_name option:selected', this);
var selected_value = document.getElementById('fruit_name');
var selected_value = document.getElementById('fruit_name').length;
var selected_value = document.getElementById('fruit_name').value;
var selected_value = document.getElementById('fruit_name').innerHTML;
*/
if(selected_value) {
alert("NOT null, value: " + selected_value);
//do something
}
else {
alert("null, value: …Run Code Online (Sandbox Code Playgroud) 我不是程序员.我正在尝试使用cookie脚本来记住最后一个下拉菜单选项.
我找到了一个有效的脚本,但它只有一个会话cookie.如何在此脚本中向cookie添加过期日期?
<head>
<script>
function SETcookie() {
document.cookie = "Selected=" + document.getElementById('myList').selectedIndex;
}
function GETcookie() {
if (document.cookie) {
eval(document.cookie);
document.getElementById('myList').selectedIndex = Selected;
}
}
</script>
</head>
<body onLoad="GETcookie()">
<select id="myList" onChange="SETcookie()">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
</body>
Run Code Online (Sandbox Code Playgroud) 我一直在阅读可访问性和概念,我无法找到关于偶然发现的准确信息:HTML可标记元素.
我理解,labelable元素背后的概念是一个可以正确包装或引用的元素<label>,例如:
<label>
Enter some data
<input type="text"/>
</label>
Run Code Online (Sandbox Code Playgroud)
或者例如:
<label for="anInputField">
Enter some data
</label>
<input type="text" id="anInputField"/>
Run Code Online (Sandbox Code Playgroud)
有没有人确切知道什么是可绑定的HTML元素,哪些不是?
奖金回合! 你能详细说明为什么ARIA使用的第五条规则是一项正在进行的工作吗?在我自己的网站,我希望能够考虑对将来的变化,但我不知道为什么它不是一成不变的(好像它应该是).
我想知道如何onsubmit从表单中获取事件以进行某些表单验证,因为我无法直接访问它.(我正在编写一个用于评论的Wordpress插件,因此无法直接访问表单标签或提交按钮.)
我为我的插件尝试做这件事感到非常沮丧,我在下面写了一个Hello World版本.我希望它在我加载页面时显示"Hello World"警报,并在我单击"提交"按钮时显示"表单已提交"警报.相反,它会在页面加载时显示两个弹出窗口.
这是我的代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h2>Test</h2>
<form action="#" method="post" id="commentform">
<p><input type="text" name="author" id="author" size="22" tabindex="1" />
<label for="author"><small>Name (required)</small></label></p>
<p><input name="submit" type="submit" id="submit" tabindex="5" value="Submit Comment" />
</form>
<script type="text/JavaScript">
<!--
alert("Hello world");
var formCheck = document.getElementById("commentform");
formCheck.onSubmit = doMapping();
function doMapping() {
alert("form submitted");
return false;
}
-->
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我正在尝试构建一个下拉菜单。基本结构Test是我需要使用 Reactref和styled-components.
我已经检查了 SO 中的相关文章,但它们使用了我的类组件不支持的钩子。
这是代码:
import React from "react";
import PropTypes from "prop-types";
import styled, { ThemeProvider } from "styled-components";
import { theme } from "../theme";
import Icon from "../Icon";
const Container = styled.div`
display: flex;
`};
const SelectorDiv = styled.div`
background-color: black;
color: white;
height: 100px;
`;
class Test extends React.Component {
componentDidMount () {
document.addEventListener("mousedown", this.handleClickOutside);
}
componentWillUnmount () {
document.removeEventListener("mousedown", this.handleClickOutside);
}
handleClickOutside = event => {
console.log(this.refs); // undefined …Run Code Online (Sandbox Code Playgroud) 我想看看以下是否可行:
$(document),$(body),$(window)等由于性能的原因.我的实现包含一个非常简单的HTML导航栏,如下面的代码段所示.我在每个<a>标签之间进行原生键盘导航.第一个列表元素是标题,包含可见的锚点,第二个元素
<ul class="test">
<li>
<a href="#">Title</a>
</li>
<li>
<ul>
<li>
<a href="#">Some link</a>
</li>
<li>
<a href="#">Some link</a>
</li>
<li>
<a href="#">Some link</a>
</li>
<li>
<a href="#">Some link</a>
</li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
这个导航栏的目标很简单:
我有1和2,但由于上面列出的要求,3是棘手的.我知道这可以很容易地使用全局选择器来完成,但是这个挑战是要弄清楚并理解是否可以这样做.
$(document).ready(function() {
dropdownMenu = $(".test > ul");
dropdownMenu.hide();
$(".test").focusin(function() {
if (dropdownMenu.is(":hidden")) {
dropdownMenu.show();
}
});
// Some selector for some event here to handle the focus/clicks …Run Code Online (Sandbox Code Playgroud) 我正在尝试分页来显示数据.存在的记录总数是19,我想最初显示3条记录.
这是我的分页代码:
// Instantiate pagination after data is available
pager = new Pager('results', 3);
pager.init();
pager.showPageNav('pager', 'pageNavPosition');
pager.showPage(1);
// pagination object codes.
function Pager(tableName, itemsPerPage) {
this.tableName = tableName;
this.itemsPerPage = itemsPerPage;
this.currentPage = 1;
this.pages = 0;
this.inited = false;
this.showRecords = function (from, to) {
var rows = total_records;
// i starts from 1 to skip table header row
for (var i = 1; i < rows.length; i++) {
if (i < from || i > to) rows[i].style.display …Run Code Online (Sandbox Code Playgroud) 在提升中,变量优先于函数定义还是反之亦然?请看下面的代码:
function a()
{
var x = 10;
function x() {
return 20;
}
return x;
}
Run Code Online (Sandbox Code Playgroud) 我有一个包含这3个项目的数组:
string[] departmentArray = {
"Warranty Service Representative",
"Warranty Service Administrative Manager",
"Warranty and Site Administrator"
};
Run Code Online (Sandbox Code Playgroud)
我有这个字符串
var department = "Warranty Service Representative"
Run Code Online (Sandbox Code Playgroud)
我有这个条件,假设测试字符串部门是否不在 departmentArray
if (Array.Exists(departmentArray, element => element != department)){
}
Run Code Online (Sandbox Code Playgroud)
显然字符串在数组中,因此它应该返回false,但是对于我的字符串,这返回true.我究竟做错了什么?