小编Ωme*_*ega的帖子

WWW :: Scripter与window.history有关

我正在使用带有JavaScript插件的perl模块WWW::Scripter(基于WWW::Mechanize),我遇到了一个基本的JavaScript语句问题.

use WWW::Scripter;
...
my $web = WWW::Scripter->new(agent => '...', autocheck => 1);
...
$web->use_plugin('JavaScript');
...
$web->add_header(Referer => 'http://...');
...
$web->get($url);
Run Code Online (Sandbox Code Playgroud)

其中源代码包含基本的JavaScript语句,例如:

var x = window.history.length;
Run Code Online (Sandbox Code Playgroud)

并且此语句不能与WWW::Scripter模块一起执行.

我对任何其他的,甚至非常复杂的jquery语句都没有任何问题.就这一个!

有什么建议?

javascript perl mechanize

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

Javascript ::如何获取关联数组的键到数组变量?

让我们有一个像这样的关联数组:

var aArray = {};
aArray.id = 'test';
aArray['x1'] = [1,2,3];
aArray['stackoverflow'] = 'What\'s up?';
aArray['x2'] = [4,5,6];
var keys = [];
for(var key in aArray) {
  if (aArray.hasOwnProperty(key)) {
    keys.push(key);
  }
}
console.log(keys);
Run Code Online (Sandbox Code Playgroud)

有没有简单/简短的方法如何在没有循环的情况下获得数组变量键数组

如果是这样,另外,可以将一些正则表达式应用于键列表,以获得匹配这种模式的键(比方说 /^x/)而没有另一个循环?

javascript regex arrays hash associative-array

7
推荐指数
2
解决办法
3万
查看次数

如何在Perl中实现信号量线程通信?

我的Perl脚本需要同时运行多个线程...

use threads ('yield', 'exit' => 'threads_only');
use threads::shared;
use strict;
use warnings;
 no warnings 'threads';
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Async;
use ...
Run Code Online (Sandbox Code Playgroud)

......并且这样的线程需要从web获取一些信息,因此HTTP::Async被使用.

my $request = HTTP::Request->new;
   $request->protocol('HTTP/1.1');
   $request->method('GET');
   $request->header('User-Agent' => '...');

my $async = HTTP::Async->new( slots            => 100,
                              timeout          => REQUEST_TIMEOUT,
                              max_request_time => REQUEST_TIMEOUT );
Run Code Online (Sandbox Code Playgroud)

但是有些线程只有在其他线程这样说时才需要访问web.

my $start = [Time::HiRes::gettimeofday()];
my @threads = ();
foreach ... {
  $thread = threads->create(
    sub {
           local $SIG{KILL} = sub { threads->exit };
           my $url = shift;
           if ($url …
Run Code Online (Sandbox Code Playgroud)

perl multithreading semaphore process multiprocessing

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

最小数量不包括零

我需要从数字列表中找到最小数字,不包括零.

是否有一些内部功能可以做到这一点?或者我必须在Math.min使用之前从列表中删除零(?)?

例:

输入:213,0,32,92,0,2992,39

结果: 32


[更新]如果可能,请提供将输入作为参数的函数代码,例如nonZeroMin(213, 0, 32, 92, 0, 2992, 39)

javascript

6
推荐指数
4
解决办法
6034
查看次数

如何计算CIELAB L*a*b*模型中定义的4种颜色的混合?

我有4种颜色,我从RGB转换为CIELAB L*a*b*模型.

  1. 当我拥有这些颜色时,如何计算这4种颜色的混合(L,a,b)

  2. 如果我想(w1, w2, w3, w4)在4种颜色上加权,最多1次,最小0次(无),我该如何计算相同的混合?

colors weighted-average color-space

6
推荐指数
2
解决办法
2317
查看次数

如何读取/写入本地文件的cookie:/// HTML文档?

如何file:///使用Javascript或jQuery 读取/写入本地HTML文档的cookie ?

我试过这个>>

function setCookie(c_name, value, exdays)
{
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + exdays);
  var c_value = escape(value) + 
    ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
  document.cookie = c_name + "=" + c_value;
}

function getCookie(c_name)
{
  var i, x, y, ARRcookies = document.cookie.split(";");
  for (i = 0; i < ARRcookies.length; i++)
  {
    x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
    y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
    x = x.replace(/^\s+|\s+$/g, "");
    if (x == c_name)
    {
      return …
Run Code Online (Sandbox Code Playgroud)

javascript cookies jquery android setcookie

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

设置 DNS 服务器以用于 Curl 请求

我想使用像Unblock-Us这样的智能 DNS 代理 ( wiki )通过 Curl 从 Netflix URL(只是 HTML,而不是视频内容)获取内容。智能 DNS 使我看起来来自我选择的任何国家/地区。

为此,我假设我需要设置我的 Apache 服务器的 DNS,就像我在本地机器上设置它一样。

这可能吗?

php apache dns curl

6
推荐指数
0
解决办法
2104
查看次数

在 build.gradle 中设置变量

在我的build.gradle ( Module: app ) 中,我指定了一个buildConfigField和一个resValue变量。

buildTypes {
    release {
        debuggable false
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

        buildConfigField "String", "APP_EXP_DATE", "\"DEC 31 23:59:59 EDT 2018\""
        resValue         "String", "app_exp_date", "\"DEC 31 23:59:59 EDT 2018\""
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我希望它们在我的 Java 代码中使用,如下所示:

BuildConfig.APP_EXP_DATE
R.string.app_exp_date
Run Code Online (Sandbox Code Playgroud)

但不幸的是我遇到了以下错误:

错误:找不到符号变量 APP_EXP_DATE

错误:类型的非法开始

如何才能在 Java 代码中从 gradle 访问变量?

android gradle android-studio build.gradle android-gradle-plugin

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

如何覆盖 setTimeout() 和 setInterval() 以允许动态调整

我正在调试一些复杂的动画内容,有时我需要放慢时间来查看到底发生了什么。由于代码非常复杂,修改动画代码不是一个可行的选择。因此,我决定对Date类进行如下修改:

let ___date = Date.now();
const ___now = Date.now;
Date = new Proxy(Date, {
  construct(target, args) {
    if (args[0] === undefined) args[0] = this.adjust()
    let date = new target(...args);
    return date;
  },
  get(target, prop, receiver) {
    if (prop === 'now') {
      let date = new Date()
      date.now = () => this.adjust()
      return Reflect.get(date, prop, receiver)
    }
    return Reflect.get(target, prop, receiver)
  },    
  apply(target, thisArg, argumentList) {
    return toString.bind(new Date()).call();
  },
  adjust() {
    // ...
  }
});
Run Code Online (Sandbox Code Playgroud)

这适用于new Data() …

javascript javascript-objects

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

onmousedown - 向左还是向右?

首先,我不是在寻找 jQuery 解决方案,只是在元素内部寻找简单的纯 Javascript 代码。

假设我们有以下 html 代码:

<select onmousedown=" ??? ">...</select>
Run Code Online (Sandbox Code Playgroud)

我想要元素内部的一个简单脚本来显示弹出消息alert(),其中包含按下哪个按钮的信息以及元素与文档的相对位置<body>- 类似于offset()jQuery。

html javascript jquery onmousedown dom-events

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