草庐IT

查找HTML元素

全部标签

javascript - 将事件绑定(bind)到多个元素而不循环(vanilla JS)

我正在努力实现相当于:$('div').on('click',function(){//Dosomething});但没有jQuery。我最初的想法是使用for循环来遍历集合中的所有元素,但我猜测有一种不使用循环(某种native方法?)实现这一点的更好方法。varelems=document.getElementsByTagName('div');functionsomeEvent(){//Genericfunctiontotestagainstalert('eventfired');}for(vari=0,j=elems.length;i有没有不包含库的更优雅的方法?

javascript - 无法将 .focus() 赋予下拉菜单的元素

这是一个Boostrap导航栏,包含一个dropdown菜单,包含一个.当我点击下拉菜单时,它显示成功。的值成功改成Bonjour但是这个没有得到焦点。为什么?http://jsfiddle.net/rzsmdg4f/1/如何使用.focus()将焦点放在下拉菜单中包含的输入上?代码:DropdownLink:JS:{varmaa=document.getElementById('maa');console.log(maa);maa.addEventListener('click',function(){console.log($('#ha'));$('#ha').val('Bonjo

javascript - 使用 Protractor 访问 JS 作用域元素/变量

我有一个Protractor测试,它输入登录数据并单击登录按钮,我想检查Angular变量的值。点击元素的ng-click是doLogin(),它在Controller文件中定义为:$scope.doLogin=function(){console.log('login--todo');//rememberemailusedlocalStorageService.add('lastKeyEmail',$scope.data.login.key.email);//todo-makedynamic$scope.authentication.user=true;//setemailoflog

javascript - 是否有一种纯 Javascript 方法可以将一个函数应用于多个元素的事件?

我想使用纯Javascript将单个函数绑定(bind)到多个事件。在jQuery中我会使用:$('.className').click(function(e){//dostuff});所以我尝试使用纯JS:document.getElementsByClassName('className').onclick=function(e){//dostuff};这不起作用,因为getElementsByClassName返回一个数组,而不是DOM对象。我可以遍历数组,但这似乎过于冗长而且似乎没有必要:vartopBars=document.getElementsByClassName('c

javascript - 检查 jQuery 是否单击了包含 img 的 anchor 元素

如何检查点击的元素是否是包含img的anchor?例如,我想检查这个元素是否被点击:jQuery(document).click(function(e){//e.target.hereIsWhereINeedHelp;});提前致谢! 最佳答案 如果你想捕捉任何元素的“点击”:jQuery(document).click(function(e){if(jQuery(e.target).is('a')&&jQuery(e.target).has('img')){//codegoeshere}});您是否选择阻止“默认行为”是另一个问题

javascript - 如何使用 HTML5 音频 API 播放从 XMLHTTPRequest 返回的音频

在向我的服务器端api发出“AJAX”请求时,我无法播放音频。我有后端Node.js代码,它使用IBM的WatsonText-to-Speech服务来提供文本音频:varrender=function(request,response){varoptions={text:request.params.text,voice:'VoiceEnUsMichael',accept:'audio/ogg;codecs=opus'};synthesizeAndRender(options,request,response);};varsynthesizeAndRender=function(opt

javascript - 正则表达式用 HTML 标签包装字符串

我有一个包含很多行的文本区域,如下所示:#1=stuff#2=morestuff...#123=evenmorestuff...我正在使用正则表达式来查找#num=模式(/^#[0-9]*=/),我想让它们成为像这样的anchor标记#123=但它并没有像我想象的那样工作。"#2=".replace(/^#[0-9]*=/,"$1")结果:$1我做错了什么? 最佳答案 您忘记了捕获组或使用$&引用第0组并且您只处理初始数字,因为您使用的是字符串anchor的开头(您需要将其删除以匹配所有它们中的一个,或者如果你想匹配行的开头,请使用

javascript - 根据其他所有元素对 Javascript 数组进行排序

假设我有一个这样的数组:vara=[94,"Neptunium",2,"Helium",null,"Hypotheticalium",64,"Promethium"];偶数数组索引与以下奇数索引链接。换句话说,94与“Neputunium”一起使用,2与“Helium”一起使用等。如何根据偶数索引对数组进行排序,但在其后保留以下奇数索引值?这样我就得到了一个像这样的数组:a=[null,"Hypotheticalium",2,"Helium",64,"Promethium",94,"Neptunium"];注意:是的,我确实知道使用对象或ES6Map(或者,在这种情况下,如果null被

javascript - Angular2 ElementRef nativeElement 检查元素是否被禁用

我的指令中有这个,名为“bgcolor”:exportclassBgColorDirective{constructor(el:ElementRef){console.log(el.nativeElement.disabled);//show"false"if(el.nativeElement.disabled){el.nativeElement.style.backgroundColor='#5789D8';el.nativeElement.style.color='#FFFFFF';}}在我的模板中,我有:我不明白为什么el.nativeElement.disabled返回fals

javascript - 在数组中查找重复数组

给定一组数组,识别重复项的有效方法是什么?vararray=[[11.31866455078125,44.53836644772605],[//我一直在用lodash研究这个作为接受的依赖项,我知道如何使用_.uniqWith返回“唯一”列表和_.isEqual:_.uniqWith(array,_.isEqual)With会给出列表的“唯一”版本:[[11.31866455078125,44.53836644772605],[11.371536254882812,44.53836644772605],[11.371536254882812,44.50140292110874]]但我不