【问题标题】:Node.js define document objectNode.js 定义文档对象
【发布时间】:2012-08-21 23:37:04
【问题描述】:

您好,我正在尝试使用 node.js 在服务器端运行 js 函数,但出现了问题。该函数正在使用文档 dom 访问返回的 html 上的一些隐藏值,并且该文档在 node.js 上未定义,有没有办法定义文档对象?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta name="generator" content=
  "HTML Tidy for Linux/x86 (vers 11 February 2007), see www.w3.org" />

  <title></title>
</head>

<body>
  <form id="sbb_KoNkmwM" method="post" style="display:none" name="sbb_KoNkmwM">
    <input name='sbb_BQGUL' type='checkbox' value='IbNlk' /><input name='sbb_BQGUL' type=
    'checkbox' value='huTi' /><input name='sbb_BQGUL' type='checkbox' checked="checked"
    value='qGx' /><input name='sbb_BQGUL' type='checkbox' value='WGrkKwxP' /><input name=
    'sbb_BQGUL' type='checkbox' value='tgQHP' /><input name='sbb_BQGUL' type='checkbox'
    value='dDrn' />
  </form>

 function sbb_kVnTj() {
    var data = 'ZmdiRlhjdQ==';
    var rEda = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i = 0,
    ac = 0,
    dec = "",
    tmp_arr = [];
    do {
        h1 = rEda.indexOf(data.charAt(i++));
        h2 = rEda.indexOf(data.charAt(i++));
        h3 = rEda.indexOf(data.charAt(i++));
        h4 = rEda.indexOf(data.charAt(i++));
        bits = h1 << 18 | h2 << 12 | h3 << 6 | h4;
        o1 = bits >> 16 & 0xff;
        o2 = bits >> 8 & 0xff;
        o3 = bits & 0xff;
        if (h3 == 64) {
            tmp_arr[ac++] = String.fromCharCode(o1);
        } else if (h4 == 64) {
            tmp_arr[ac++] = String.fromCharCode(o1, o2);
        } else {
            tmp_arr[ac++] = String.fromCharCode(o1, o2, o3);
        }
    } while ( i < data . length );
    dec = tmp_arr.join('');
    return dec.substr(6, 1);

}
function sbb_MHVY() {
    function sbb_iSH(objArr) {
        var ts = '';
        for (i = 0;
....

【问题讨论】:

  • 不清楚你想做什么。您是否尝试将 sbb_kVnTj 函数作为服务器端函数运行?另外,你在哪里使用document?它不在您发布的代码中。请编辑您的问题以包含对您想要做的什么以及如何您尝试实现它的高级描述。
  • @apsillers Ups 抱歉,返回的 javascript 和 id 是随机的,这是一种保护。是的,我正在尝试运行 sbb_kVnTj,这也是一个随机创建的名称,它将返回一个字符,并且它包括一些在不同时间请求不同 id 的 document.getgetElementById()。所以没有合理的解决方法,但将其作为 javascript 运行。

标签: javascript html node.js


【解决方案1】:

是的,有一些方法可以在 Node.js 中创建文档。比如你可以看jsdom:https://github.com/tmpvar/jsdom

【讨论】:

  • 与实际的 DOM 对象相比,jsdom 的功能非常有限。
猜你喜欢
  • 2020-10-26
  • 2015-11-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多