我想要做的是强制一些任意的JavaScript代码在DOM元素"内部"执行,例如<div>
.换句话说,是否有可能使一段代码"思考" <div>
作为文档层次结构(或<body>
文档)的根源?
真人生活的例子:
假设我们有一个允许执行JavaScript代码的页面:
<!DOCTYPE html>
<html>
<head>
<title>Executor</title>
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<div></div>
<input/>
<button onclick="$('div').html(eval($('input').val()))">
Execute
</button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
代码可以访问整个文档并可以修改它,例如:
$("input").hide()
Run Code Online (Sandbox Code Playgroud)
会阻止我再编写任何愚蠢的代码;-)
是否可以限制某些JavaScript代码的效果区域?以及如果可能的话怎么做?
最好的祝福.
编辑:
我想要执行的代码可能就是一切.如果您的解决方案基于对给定代码的某种修改,请描述如何以正确的方式执行此操作.
EDIT2:
首先,我不知道为什么我会投票.
其次,我将执行的代码是别人的任意代码,而不是我的代码.
为了使一切清楚:
我真正想做的是以某种方式模拟浏览器.获取某些网页的内容,并插入我的网页.当我们决定关闭JavaScript并删除可能出现的所有地方时,这相对容易,但这是我不能做的事情.现在我想限制DOM修改(恶意代码).当我有一个基本想法时,我将在稍后处理重定向和cookie.
我正在尝试为黄瓜和水豚的新rails 3应用程序设置集成/验收测试.(我最初计划使用webrat,但它似乎不支持rails 3,所以我最终使用了capybara)
我正在尝试进行基本的登录测试:
Feature: Login user
In order to access the non-public parts of the site,
as a user,
I want to login to the site
Scenario: login with valid credentials
Given I am on the login page
When I fill in "Email" with "bender@planetexpress.com"
And I fill in "Password" with "pass"
And I press "Login"
Then I should be on the users home page
And I should see "Login successful"
Run Code Online (Sandbox Code Playgroud)
现在的问题是,登录表单将我发送给我/user_session
,然后将我重定向到用户主页/home
.黄瓜不遵循导致Then I should …
我运行我的Web应用程序时收到此消息.它运行正常,但我在关机期间收到此消息.
严重:Web应用程序注册了JBDC驱动程序[oracle.jdbc.driver.OracleDriver],但在Web应用程序停止时无法注销它.为防止内存泄漏,JDBC驱动程序已被强制取消注册.
任何帮助赞赏.
我为iPad编写了一个HTML5应用程序.它有一个输入字段.每次用户访问此页面时,都会出现弹出键盘.
如何在HTML5/JS上下文中抑制此默认行为?
在我的应用程序中,如果您输入登录名和密码,它会显示另一个屏幕(没有页面重新加载).但键盘仍然存在,您必须手动隐藏它.
UNIX绝对路径以'/'开头,而Windows以字母'C:'或'\'开头.python是否有标准函数来检查路径是绝对路径还是相对路径?
我无法弄清楚如何在Javascript中访问对象属性.我有一个返回一个对象的函数,当它在Safari中记录到控制台时我可以看到该对象及其所有属性,但我无法获取其他函数的属性值.例如,尝试提醒其中一个属性返回'undefined'.
生成对象的函数
getProfile : function() {
FB.api('/me', function(response) {
facebook.profile.user_id = response.id;
facebook.profile.name = response.name;
facebook.profile.firstName = response.first_name;
facebook.profile.lastName = response.last_name;
facebook.profile.gender = response.gender;
});
FB.api('/me/photos', {limit: 8}, function(response) {
facebook.profile.numPhotos = response.data.length;
for (key in response.data) {
var photoUrl = response.data[key].source;
eval('facebook.profile.photo' + key + '= photoUrl');
}
});
return facebook.profile;
}
Run Code Online (Sandbox Code Playgroud)
试图在另一个脚本中使用该功能
function loadProfile() {
var profile = facebook.getProfile();
console.log(profile); alert(profile.name); } Run Code Online (Sandbox Code Playgroud)
我在shell中,我有这个字符串: 12 BBQ ,45 rofl, 89 lol
使用正则表达式:\d+ (?=rofl)
我想要45
的结果.
使用正则表达式从字符串中提取数据是否正确?我所做的最好的是突出一些在线正则表达式编辑器的价值.大多数情况下它会从我的字符串中删除值.
我正在调查expr
,但我得到的只是语法错误.
如何设法在shell脚本中提取45?
我一直在关注Mozilla网站上有关透明度和渐变的课程:https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Canvas_tutorial/Applying_styles_and_colors但我无法弄清楚这一点一出.
我知道我可以通过png图像实现这些效果; 但是,在我正在处理的程序中,渐变会根据图像的移动位置不断变化.
这是我正在寻找的效果的一个例子. http://home.insightbb.com/~epyonxl1/gradientex.jpg
无论您在编程C或Java方面多么熟练,都应该考虑在您的技能集中添加多线程编程.
这不是你应该自己学习的东西.学习它比顺序编程更难.如果您是技术经理,您应该投资重新培训多线程编程中的关键人员.您还可以监视并发编程语言中的研究活动(如上所列).你可以肯定你的竞争对手会.
这是本文的引用.我想我们这里的大多数人都非常精通自己教授不同的语言,数据结构,算法等等,而且我确实认识到正确进行并行编程需要进行的心理转变.
我拒绝接受一个人无法自己"正确"学习并行编程的想法.那么教授自己并行编程最负责任的方法是什么?建议使用哪些书籍和其他资源?
编辑:以下是一些更多细节.我主要将这些应用于科学计算,但我一直在寻找与语言无关的一般材料/建议.我也在寻找一种健康的实用理论.想象一下,你有一个优秀的开发人员喜欢数学和计算机科学,但从未参加并行编程课程.现在想象他有一个问题的最后期限(比如1年),你必须给他一些材料来确定并行化是否有用,以及如何正确实现它.你会给他什么资源?这就是我(我希望其他开发人员)对学习并行化/多线程感兴趣的方式.
我正在浏览android dev网站上的记事本练习,目前正在进行练习(在这里找到).
我走到教程的最后,发现我在主要的两个关于R文件关系的java文件中有几个错误,例如setContentView(R.layout.notes_list);
和menu.add(0, INSERT_ID,0, R.string.menu_insert);
我试过清洁和重新生成R.java
无济于事.
这些也出现在练习的解决方案中,所以我认为它们是故意的错误,或者是我的日食,但我似乎无法修复它们,任何帮助都会非常感谢!