我正在尝试在浏览器扩展中运行javascript以自动化在网站上填写表单然后单击按钮的过程 - 可以通过在地址栏中键入javascript:code来模拟扩展代码.
我遇到使用问题的网站angularJS
.我有输入字段ID的名称,并使用它们来更改输入字段值.字段填满但是当我点击按钮时它表示它们没有填充,没有值,它们都是错误的.正在进行一些验证,除非我手动输入值,否则不会"看到"我的更改.
是否有一种简单的方法来更改仅使用输入字段的id进行验证的AngularJS输入字段的值.
这是代码:
<input id="shippingAddr-first-name" type="text" class="first-name ng-pristine ng-valid" maxlength="16" data-ng-model="addressTypes[addressType].FirstName" focus-me="commonAddressTypeProps[addressType].focusOnFirstName" client-validation="onExit" data-required-on-exit="">
Run Code Online (Sandbox Code Playgroud)
我尝试使用
document.getElementById("shippingAddr-first-name").value="Dave";
更改字段但在表单提交期间未正确注册.但是,如果我手动输入它,它确实有效.我也试过click()
,blur()
并且focus()
,模拟我可能手动做的一些事情,但那些也不起作用.
是否可以创建一个调整到浏览器大小的div,也可以滚动?我想用overflow:auto
div和百分比高度90%
.
页面的结构是
<body style="height:100%">
<div id=header style="height:100%">headerinfo</div>
<div id=content style="height:100%;overflow:auto">content which is replaced dynamically</div>
</body>
Run Code Online (Sandbox Code Playgroud)
将overflow:auto
工作没有已知px
的某处层次结构中的高度?
我正在尝试为chrome扩展程序创建一个弹出界面.我似乎无法从popup.html/popup.js向content.js脚本发送消息.这是我到目前为止所拥有的.当我点击扩展图标时,我会看到一个说clickme的按钮.我点击它没有任何反应,chrome javascript控制台没有错误,也没有发送到content.js的消息.
表现
{
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
"manifest_version": 2,
"name": "extensiontest",
"version": "0.2",
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": ["content.js"]
}
],
"browser_action": {
"default_icon": "Beaker.png",
"default_popup":"popup.html"
},
"background": {
"scripts": ["background.js"]
},
"permissions": [
"tabs"
]
}
Run Code Online (Sandbox Code Playgroud)
popup.html
<html>
<head></head>
<script src="popup.js"></script>
<body>
<input id="button1" type=button value=clickme>
</body></html>
Run Code Online (Sandbox Code Playgroud)
popup.js
function popup(){
alert(1);
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
var activeTab = tabs[0];
chrome.tabs.sendMessage(activeTab.id, {"message": "start"});
});
button1=document.getElementById("button1");
button1.addEventListener('click', popup)
}
Run Code Online (Sandbox Code Playgroud)
content.js
chrome.runtime.onMessage.addListener(
function(request, sender, …
Run Code Online (Sandbox Code Playgroud) couchdb可以循环吗?
假设我有一个兴趣数据库,有 3 个字段 subject1、subject2、subject3。例如,猫、营养、头发或空间、望远镜、光学等。
一个人 (A) 有 10 个兴趣,每个兴趣由 3 个字段组成。
另外 10 个人 B、C、D...有 10 个兴趣,每个兴趣由 3 个主题组成。
当人 A 登录时,我希望系统搜索所有具有匹配兴趣的人。
在 javascript 中,我通常会循环遍历所有兴趣,然后使用两个循环找到匹配的兴趣。然后将匹配项存储在用户的另一个数据库中,例如“matchinginterests”。
与 mysql 相比,在 couchdb 中是否有任何简单的方法可以做到这一点——这看起来非常复杂。
谢谢,丹
我有一个公式我想通过使用运营商拆分+
,-
,/
,*
作为分隔符.然后我想改变一个项目并将等式重新组合在一起.例如,等式可以是
s="5*3+8-somevariablename/6";
Run Code Online (Sandbox Code Playgroud)
我以为我可以使用正则表达式来区分方程式.
re=/[\+|\-|\/|\*]/g
var elements=s.split(re);
Run Code Online (Sandbox Code Playgroud)
然后我会更改一个元素并将其重新组合在一起.但是除非我能以某种方式跟踪每个分隔符以及何时使用它,否则我无法将其重新组合在一起.还有其他正则表达式工具吗?
我正在尝试对有时具有无穷大或NaN的数组进行排序.当我使用标准的javascript array.sort()它似乎排序,直到它达到NaN然后我得到随机结果.
var array =[.02,.2,-.2,Nan,Infinity,20];
Run Code Online (Sandbox Code Playgroud)
有没有办法对此进行排序,以便最终结果从负到正,并且最后仍然有NaN或无穷大.
-.2,.02,.2,20,NaN,Infinity
Run Code Online (Sandbox Code Playgroud) 我想用一些math
函数替换Math.sin
.这就是我尝试过的.我希望结果Math.cos
将被替换为Math.sin
re=/[Math\.cos|Math\.tan]/g;
s="Math.cos(0)+Math.cos(0)";
s=s.replace(re,"Math.sin");
alert(s);
Run Code Online (Sandbox Code Playgroud)
我期望的结果将是Math.sin(0)+Math.sin(0)
它
Math.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sin(0)+Math.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sinMath.sin(0)
Run Code Online (Sandbox Code Playgroud)
我不知道该尝试修复代码.
这个问题专门用于防止将不必要的属性添加到javascript“类”中。我有一堂课叫做动物。
function Animal(){
this.name="";
this.type="";
//20 other properties
}
Run Code Online (Sandbox Code Playgroud)
用户创建自己的动物并添加20个属性的最简单方法是什么。我还想防止用户意外添加错误的属性。
我目前的方法:
var myAnimal= new Animal();
myAnimal.name="fluffy";
myAnimal.type="cat";
myAnimal.typo="cat";
Run Code Online (Sandbox Code Playgroud)
//添加20个以上的属性将需要再输入myAnimal 20次,而且如果用户输入错误,则会将其添加为新属性。
我希望会有这样的事情:
myAnimal=new Animal{
name:"fluffy",
type:"cat";
typo:"cat" //would throw an error
}
Run Code Online (Sandbox Code Playgroud)
我已经研究了Object.freeze Object.seal,Object.preventExtensions,但不确定它们如何应用于类。
此代码提供错误说明
1026:构造函数必须是实例方法.joe.mxml/joe/src第7行Flex问题
为什么.这就是我在flash中声明公共变量的方法.为什么它不适用于Flex?我也尝试过var joe:String ="won"; 仍然无法正常工作.
<fx:Script>
<![CDATA[
var joe="winning";
function changelabel()
{
myButton.label=joe;
}
]]>
</fx:Script>
<s:Button x="50" y="42" label="Button" id="myButton" click="changelabel()"/>
Run Code Online (Sandbox Code Playgroud) 有没有一种简便的方法可以在 javascript 中向类的实例添加属性?
编辑:重复的答案是关于向对象而不是类添加属性。我试图让用户轻松添加大约 10-20 个属性。我还试图确保他们无法添加自己的属性,而只能向预定义的属性添加值。我不知道该怎么做。
我有一个 javascript“类”:
function Car(){
this.make="";
this.model="";
//...
}
Run Code Online (Sandbox Code Playgroud)
要创建实例并添加属性,我将使用:
var mycar = new Car();
mycar.make="honda";
mycar.model="civic";
//...
Run Code Online (Sandbox Code Playgroud)
有没有一种快捷方式来创建实例并添加属性,这样我就不必键入“mycar”。每一次?
javascript ×6
class ×2
angularjs ×1
apache-flex ×1
arrays ×1
couchdb ×1
declare ×1
delimiter ×1
flash ×1
for-loop ×1
height ×1
html ×1
immutability ×1
input ×1
loops ×1
mysql ×1
nan ×1
overflow ×1
percentage ×1
popup ×1
properties ×1
regex ×1
replace ×1
scroll ×1
sendmessage ×1
shorthand ×1
sorting ×1
split ×1
variables ×1