标签: firebug

用户输入带有变量声明的 JavaScript eval

作为家庭作业的一部分,我试图在浏览器环境中实现一个类似于 Firebug 中可用的 JavaScript 控制台。从我收集到的情况来看,eval()这似乎是最简单的方法。然而,即使是非常基本的用户输入,我的代码也会遇到一些问题。例如:

\n\n
var number = 5;\n
Run Code Online (Sandbox Code Playgroud)\n\n

导致语法错误而不仅仅是评估undefined像 Firebug 中那样进行评估。因此,我似乎根本无法在 eval 字符串内声明变量。如果我做一些更简单的事情,例如:

\n\n
3 + 4 * Math.PI\n
Run Code Online (Sandbox Code Playgroud)\n\n

它工作正常。我试图找到一个有人使用的例子eval()在包含变量声明的字符串上使用的示例,但我似乎找不到任何人这样做。

\n\n

在将用户输入编译成新字符串之前,我是否需要使用正则表达式完全解析用户输入eval()

\n\n

能把eval()分号理解为换行符吗?我也找不到使用这些的人。

\n\n
function runMiniFirebug() {\n    var userInput = document.getElementById("user-input").value;\n    try {\n        var userOutput = eval(\'(\' + userInput + \')\');\n        document.getElementById("js-output").innerHTML += \'<p class="input">>>>\' + userInput + \'<p>\';\n        document.getElementById("js-output").innerHTML += \'<p class="ouput">\' + userOutput + \'<p>\';\n    }\n    catch(error) {\n        document.getElementById("js-output").innerHTML += \'<p class="input">>>>\' + …
Run Code Online (Sandbox Code Playgroud)

javascript firebug command-line eval

2
推荐指数
1
解决办法
1488
查看次数

Firefox 3上的Firebug是否稳定?

我真的应该升级到Firefox 3,但我非常依赖Firebug正常工作.

我知道有一个版本的Firebug可以与Firefox 3一起使用,但是上次我看,它似乎有问题.

那么,对于那些已经取得成功的人来说,Firefox 3上的Firebug是否准备好迎接黄金时段?

firebug firefox-3

1
推荐指数
1
解决办法
727
查看次数

萤火虫说不是功能

<script type = "text/javascript">
        var First_Array = new Array();
        function reset_Form2() {document.extraInfo.reset();}
        function showList1() {document.getElementById("favSports").style.visibility="visible";}
        function showList2() {document.getElementById("favSubjects").style.visibility="visible";}
        function hideProceed() {document.getElementById('proceed').style.visibility='hidden';}

    function proceedToSecond ()
    {
        document.getElementById("div1").style.visibility="hidden";
        document.getElementById("div2").style.visibility="visible";
        document.getElementById("favSports").style.visibility="hidden";
        document.getElementById("favSubjects").style.visibility="hidden";
    }

    function backToFirst () {
        document.getElementById("div1").style.visibility="visible";
        document.getElementById("div2").style.visibility="hidden";
        document.getElementById("favSports").style.visibility="visible";
        document.getElementById("favSubjects").style.visibility="visible";
    }

    function reset_Form(){
        document.personalInfo.reset();
        document.getElementById("favSports").style.visibility="hidden";
        document.getElementById("favSubjects").style.visibility="hidden";
    }

    function isValidName(firstStr) {
        var firstPat = /^([a-zA-Z]+)$/;

        var matchArray = firstStr.match(firstPat);
        if (matchArray == null) {
            alert("That's a weird name, try again");
            return false;
        }

        return true;
    }

    function isValidZip(zipStr) {
        var zipPat =/[0-9]{5}/;
        var …
Run Code Online (Sandbox Code Playgroud)

html javascript forms firebug

1
推荐指数
1
解决办法
4244
查看次数

谷歌的搜索建议XHR请求

我去了谷歌,打开了我的萤火虫.我开始键入"in",然后检查Firebug的"NET"选项卡,并发送了几个新的GET请求以获取搜索自动完成建议列表.

喜欢:

GET http://clients1.google.com/complete/search?hl=en&client=hp&expIds=17259,17315,23628,24549,26637,26761,26849,26869,27386,27404&q=i&cp=1
Run Code Online (Sandbox Code Playgroud)

但它们被归类为"JS"部分,而不是"XHR" - 为什么会这样?不是谷歌在幕后制作AJAX GET请求吗?

javascript ajax firebug xmlhttprequest

1
推荐指数
1
解决办法
214
查看次数

$未在JavaScript中定义

Firebug报告说

$未定义[打破此错误] $(function(){

我有一个简单的index.php页面,它包含php包含我需要的内容.

内容如下:

<script type="text/javascript">
$(function(){
    $("#ipad").submit(function() {
        $.post("ipadcheck.php", $("#ipad").serialize(),
        function(data) {
            if(data.error == 'TRUE') {  
                    $("#results_ajax").html("<div class='AppleRedBold'>Sorry There were     Errors: " + data.error_message + "</div>");
            } else {
                $("#results_ajax").html("<div class='AppleRedBold'>" + data.display + "    </div>");
            }
        }, "json");

        return false;

    });
});
</script>

<div class="paragraph_style" id="results_ajax"></div>

    <div class="paragraph_style">
        <form id="ipad" name="ipad">
                <label class="paragraph_style" for="txtZip">Zip Code:     </label>
                <input class="searchBox Black" id="txtZip" name="txtZip" type="text" />
                <br /><br />
                <input type="submit" value="Submit">
        </form>
    </div>                  
</div>
Run Code Online (Sandbox Code Playgroud)

我在其他地方这样做,我很好.我不明白错误.....

javascript php firebug

1
推荐指数
1
解决办法
235
查看次数

在火灾bug生成的xpath中的Tbody标签

我正在尝试使用ruby hpricot库从在线htmls中提取一些数据.我使用firefox扩展fire bug来获取所选项目的xpath.

生成的xpath表达式中始终存在额外的tbody标记.在某些情况下,我必须从表达式中删除tbody标记以获取结果,而在其他情况下,我必须保留标记以获得结果.

我只是无法弄清楚何时保留tbody标签以及什么时候不要.

ruby firebug xpath hpricot

1
推荐指数
1
解决办法
1032
查看次数

为什么在调试时在画布上绘制图像,而不是在运行时?

我正在学习HTML5和Javascript,我正试图在画布上绘制图像.如果我在打破下面标记的行后单步执行代码,我有以下代码绘制图像.如果我不调试那么根本不绘制图像.我究竟做错了什么?Firefox 10与FireBug 1.9.

请注意,虽然有一个循环来处理多个图像,但我只选择了一个.我想如果一个人不工作,那么一百个也不会工作.;-)

<!DOCTYPE html>
<html>
<body>
    <input type="file" id="files" name="files[]" multiple />
    <canvas id="picCanvas" />
    <script>
        function handleFileSelect(evt) {
            var files = evt.target.files;

            // Loop through the FileList and render images
            for (var i = 0, f; f = files[i]; i++) {

                // Only process image files.
                if (!f.type.match('image.*')) {
                    continue;
                }

                var reader = new FileReader();

                // Closure to capture the file information.
                reader.onload = (function (theFile) {
                    return function (e) {
                        var img = document.createElement('img'); // …
Run Code Online (Sandbox Code Playgroud)

javascript firefox html5 firebug

1
推荐指数
1
解决办法
660
查看次数

使用firebug或其他控制台防止访客欺诈

我正在努力防止我正在构建的webproject中的欺诈行为.该项目是一个包含多个网站的游戏.

每个网站都会对每个网页浏览进行ajax检查,以查看我服务器上的网页,以获取游戏的状态更新.响应页面,比如www.domain.com/response.cfm(它是coldfusion)通常不会返回任何内容,但是在游戏时间范围内的某个时间点,它将显示带有信息的JSON字符串.然后,此信息将由网站上包含的脚本使用.

因此,网站A已被浏览100次(其所有页面),这将产生100个ajax调用.

我遇到的问题是机器人也可以检查ajax目的地,并且速度更快.现在我可以检测到一个机器人,或者通过使用会话或检查cookie来使他变得困难,但是......

最大的问题是我发现你可以在Firebug脚本控制台或Safari控制台上做很多事情.可能也是Chrome.

使用此控制台,他们甚至可以规避跨域限制.我创建了一个简单的脚本,它对Ajax页面进行了几次调用,当我首先访问同一个域时,然后使用控制台......没有跨域限制.并且你执行所有类型的JavaScript,所以本质上像我这样的人可以使用javascript控制台在游戏中进行欺诈,该控制台将他视为常规浏览器用户.

我现在的问题是:有谁知道如何防止这种情况?我试图禁用控制台的使用,但我认为我不能.可以检测控制台是否处于活动状态,然后禁用我的脚本,这样游戏就不起作用了.但我认为他们可以手动在控制台中加载脚本源,然后游戏就可以了.

看起来控制台是一件美丽的事情,但现在对我来说是一场噩梦,以防止人们在我正在创造的游戏中作弊.

希望有人有建议.

ps:我当然试图实现som服务器端检查以检测作弊,但大多数时候它不是实时的.


更新19/3/2012
我试图阻止的欺诈是通过轮询生成下一步游戏逻辑的页面来欺骗游戏.这是一个serverscript页面,它生成json代码,该代码将触发游戏所在网站的更改.为了您的信息,所涉及的网站都有标题中的脚本,如谷歌分析,因此他们将在每次网页浏览时与我的服务器进行通信.

轮询该服务器页面可以揭示将获得作弊者知识或进展的信息.

因此,我必须通过监视将在特定时间显示信息的服务器页面来阻止人们获得其他认真玩家之前的知识.我不希望他们自动轮询它,当信息显示时,发送自己的通知并检查网站.

所以我要做的是确保如果人们每秒有多次网页浏览,就会被阻止.此外,您需要一个cookie才能加入,您只需通过登录获得cookie.希望这将为我提供足够的工具,使其尽可能健壮.

感谢您的所有知识,人们.

javascript firebug

1
推荐指数
1
解决办法
860
查看次数

JQuery Firebug非法char

我有这段代码:

$(function() {
    $('.toolbar [id^=button]').on('click', function () {
        $(this)
            .css('background-color', '#559153')
            .siblings("[id^=button]").css('background-color', '#88e885');

    });

});?
Run Code Online (Sandbox Code Playgroud)

Firebug最后找到了一个非法的字符.没有炭.我怎么解决呢?

jquery firebug

1
推荐指数
1
解决办法
414
查看次数

TypeError:$直接使用Firebug控制台时不是函数

我的页面引用了jQuery,因为其他代码已经正常运行.但我需要添加一些新代码,并决定在编写代码之前尝试直接在Firebug中测试选择器.所以我去控制台输入我的选择器:

$("h3:contains('Keynote')");
Run Code Online (Sandbox Code Playgroud)

现在,这可能是也可能不是有效的选择器.在这一点上,我不在乎.当我按Enter键时,我收到以下错误:

TypeError:$不是函数

现在我知道如果你在页面上实际运行的代码中出现错误,通常是因为jquery没有被引用或运行(我们知道它是这样),或者因为与另一个库存在冲突.但直接在控制台中运行的代码会受到影响吗?如果是这样,我如何绕过它进行测试?我是否必须在Firebug中跳过这种方式测试,只需在我的文件中编写代码并从那里进行测试?

如果它有帮助,当我点击错误消息的链接时,这就是我得到的:

在此输入图像描述

jquery firebug

1
推荐指数
1
解决办法
1万
查看次数