Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。

3
使用JavaScript设置自定义属性
我正在使用The DynaTree(https://code.google.com/p/dynatree),但遇到了一些问题,希望有人可以提供帮助。 我在页面上显示树,如下所示: <div id="tree"> <ul> <li class="folder">Outputs <ul> <li id="item1" data="icon: 'base.gif', url: 'page1.htm', target: 'AccessPage'">Item 1 Title <li id="item2" data="icon: 'base.gif', url: 'page2.htm', target: 'AccessPage'">Item 2 Title <li id="item3" data="icon: 'base.gif', url: 'page3.htm', target: 'AccessPage'">Item 3 Title <li id="item4" data="icon: 'base.gif', url: 'page4.htm', target: 'AccessPage'">Item 4 Title </ul> …
119 javascript  dom  dynatree 

4
如何使用内联JSDoc指示参数是可选的?
根据JSDoc Wiki的@param,您可以使用指示@param是可选的 /** @param {String} [name] */ function getPerson(name) { } 您可以指示设置了一个param 在线使用 function getPerson(/**String*/ name) { } 而且我可以像下面这样组合它们,效果很好。 /** @param [name] */ function getPerson(/**String*/name) { } 但是我想知道是否有可能在可能的情况下全部内联。

14
如何更改元素的文本而不更改其子元素?
我想动态更新元素的文本: <div> **text to change** <someChild> text that should not change </someChild> <someChild> text that should not change </someChild> </div> 我是jQuery的新手,因此对我而言,此任务似乎非常艰巨。有人可以指出我要使用的功能/选择器吗? 如果可能的话,我想在不为需要更改的文本添加新容器的情况下执行此操作。
119 javascript  jquery 

10
获取contentEditable插入符号索引位置
我发现了很多关于如何在浏览器中设置光标或插入符号索引位置的好方法。 contentEditable元素中,但是却没有关于如何获取或找到其索引的 ... 我想做的是知道这个div内插入符号的索引 keyup。 因此,当用户键入文本时,我随时可以知道其在 contentEditable元素中的。 编辑:我正在寻找div内容(文本),而不是光标坐标内的索引。 <div id="contentBox" contentEditable="true"></div> $('#contentbox').keyup(function() { // ... ? });

7
使用Moment.js格式化日期和减去日期
我想要一个变量DD-MM-YYYY使用Moment.js 格式保存昨天的日期。因此,如果今天是2015年5月15日,我想减去一天并得到14-4-2015。 我已经尝试过几种类似的组合: startdate = moment().format('DD-MM-YYYY'); startdate.subtract(1, 'd'); 还有这个: startdate = moment().format('DD-MM-YYYY').subtract(1, 'd'); 还有这个: startdate = moment(); startdate.subtract(1, 'd'); startdate.format('DD-MM-YYYY') 但是我不明白...

5
在ES6 / Typescript中将_(下划线)变量与箭头函数一起使用
我在一个Angular示例中遇到了这个构造,我想知道为什么选择它: _ => console.log('Not using any parameters'); 我知道变量_表示不在乎/不使用,但是由于它是唯一的变量,因此没有任何理由更喜欢使用_: () => console.log('Not using any parameters'); 当然,键入的字符数不能少于一个。在我看来()语法更好地传达了意图,并且还更加具体地说明了类型,因为否则我认为第一个示例应该看起来像这样: (_: any) => console.log('Not using any parameters'); 万一重要,这是使用它的上下文: submit(query: string): void { this.router.navigate(['search'], { queryParams: { query: query } }) .then(_ => this.search()); }

8
如何获取Typescript编译器将已编译的js输出到其他目录?
我是TypeScript的新手,现在我在项目结构中的多个地方都有.ts文件: app/ |-scripts/ |-app.ts | |-classes/ | |-classA.ts | |-classB.ts | |-controllers/ | |-controllerA.ts | |-controllerB.ts | |-otherStuff/ |-otherstuffA.ts 现在,当编译我的文件时,它们被编译到.ts文件所在的目录中: app/ |-scripts/ |-app.ts |-app.js | |-classes/ | |-classA.ts | |-classB.ts | |-classA.js | |-classB.js | |-controllers/ | |-controllerA.ts | |-controllerB.ts | |-controllerA.js | |-controllerB.js | |-otherStuff/ |-otherstuffA.ts |-otherStuffA.js 虽然我喜欢.js文件与.ts文件保持相同的目录结构的方式,但我不想在我的VCS中跟踪.js文件,因此我想将所有JavaScript文件保存在单独的目录树(然后可以将其添加到.gitignore中),如下所示: app/ …

10
使用querySelectorAll检索直接子级
我能够做到这一点: <div id="myDiv"> <div class="foo"></div> </div> myDiv = getElementById("myDiv"); myDiv.querySelectorAll("#myDiv > .foo"); 也就是说,我可以成功检索myDiv具有class 的元素的所有直接子级.foo。 问题是,我必须#myDiv在选择器中包含,这使我感到困扰,因为我正在myDiv元素上运行查询(因此显然是多余的)。 我应该能够离开#myDiv,但是选择器不是合法的语法,因为它以a开头>。 有谁知道如何编写一个选择器,该选择器仅获取运行选择器的元素的直接子代?

10
如何防止Unicode字符从JavaScript渲染为HTML中的表情符号?
我从FileFormat.Info的search中找到特殊字符的Unicode 。 有些字符正在渲染为经典的黑白字形,例如⚠(警告符号\u26A0或⚠)。这些是更可取的,因为我可以将CSS样式(例如颜色)应用于它们。 其他人则将其渲染为较新的卡通表情符号,例如⌛(沙漏\u231B或⌛)。这些不是可取的,因为我无法完全设置它们的样式。 看来浏览器正在进行此更改,因为我能够在Mac Firefox上看到沙漏字形,而在Mac Chrome和Mac Safari上看不到。 有没有一种方法可以强制浏览器显示要显示的旧版本(平面单调)? 更新:看来(从下面的评论)有一个文本显示选择,FE0E,可用来执行文本VS-表情符号。选择器被连接为后缀,字符代码上没有空格,例如⌛︎HTML十六进制或\u231B\uFE0EJS。但是,并非所有浏览器(例如Chrome和Edge)都认可它。
119 javascript  html  css  unicode  emoji 

10
检测滚动方向
因此,我正在尝试使用JavaScript on scroll调用函数。但是我想知道是否可以在不使用jQuery的情况下检测滚动方向。如果没有,那么有什么解决方法吗? 我本来只是想放一个“置顶”按钮,但我想避免这种情况。 我现在刚刚尝试使用此代码,但是没有用: if document.body.scrollTop <= 0 { alert ("scrolling down") } else { alert ("scrolling up") }

6
以编程方式在可内容编辑的HTML元素中选择文本?
在JavaScript中,可以通过编程方式选择input或textarea元素中的文本。您可以使用来集中输入ipt.focus(),然后使用来选择其内容ipt.select()。您甚至可以使用选择特定范围ipt.setSelectionRange(from,to)。 我的问题是:在contenteditable元素中也有任何方法可以这样做吗? 我发现我可以做elem.focus(),将插入号放入一个contenteditable元素中,但是随后运行elem.select()不起作用(也不行setSelectionRange)。我在网上找不到任何有关它的信息,但是也许我在寻找错误的信息... 顺便说一句,如果有什么不同,我只需要它在Google Chrome中工作即可,因为这是针对Chrome扩展程序的。

11
从角度2中的存储数组中删除项目
我想使用Type Script从角度2的存储数组中删除一个项目。我正在使用一种称为数据服务的服务,即数据服务代码: export class DataService { private data: string[] = []; addData(msg: string) { this.data.push(msg); } getData() { return this.data; } deleteMsg(msg: string) { delete [this.data.indexOf(msg)]; } } 而我的组件类: import {Component} from '@angular/core' import {LogService} from './log.service' import {DataService} from './data.service' @Component({ selector: 'tests', template: ` <div class="container"> <h2>Testing Component</h2> …

5
VueJS有条件地为元素添加属性
在VueJS中,我们可以使用v-if添加或删除DOM元素: <button v-if="isRequired">Important Button</button> 但是有一种方法可以添加/删除dom元素的属性,例如针对以下条件设置所需属性: Username: <input type="text" name="username" required> 通过类似于: Username: <input type="text" name="username" v-if="name.required" required> 有任何想法吗?

4
可以使用数学运算符*,/,+,-,^将非零数字转换为1吗?
我与软件(Oracle Siebel软件)仅支持与运营商JavaScript表达式乘法,除法,减,再加上工作,和XOR( ,*,/,-,)。+ ^我没有其他运营商,例如!或? :没有。 使用上面的运算符,是否可以将数字转换为非零数字,如果已经为零,则将其保留为0?该数字可以为正,零或负。 例: var c = 55; var d; // d needs to set as 1 我尝试过c / c,但它的计算结果是NaN何时c为0。何时为0 d需要c为0。 c是货币值,它将最多包含两个尾随数字和12个前导数字。 我试图if通过将数字转换为布尔值0或1 来模拟条件,然后将表达式的其他部分相乘。
118 javascript  siebel 

9
addEventListener在IE8中不起作用
我已经动态创建了一个复选框。我曾经addEventListener在单击复选框时调用过一个函数,该函数在Google Chrome和Firefox中有效,但在Internet Explorer 8中不起作用。这是我的代码: var _checkbox = document.createElement("input"); _checkbox.addEventListener("click", setCheckedValues, false); setCheckedValues 是我的事件处理程序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.