小编Sun*_*nny的帖子

SVG作为Div的内联背景图像不起作用

我有一个复杂的基于Jquery-UI的对话框,我想提供一个SVG图像作为背景.我试图首先在一个简单的测试文件中完成这项工作,虽然SVG作为一个独立的图像工作正常但它不起作用.这是简化的代码:

 <script>
 $(document).ready(function () { 
  svg = "<svg width='400' height='400' fill='url(#grad1)'  \
   xmlns='http://www.w3.org/2000/svg'> <rect id='bkgrect' width='400' \
   height='400' style='fill:'url(#grad1)'; stroke-width:3;'/> <defs>\
   <linearGradient id='grad1' x1='0' y1='20%' x2='0%' y2='100%'> \
   <stop id='stop1' offset='0%' stop-color='blue'/> <stop offset='100%' \
   stop-color='white'/> </linearGradient> </defs> </svg>";
  svgBase64 = btoa(svg);
  bkgrndImg = "url('data:image/svg+xml;base64,"+ svgBase64  +"')";
  $('#testDiv').css('background-image', bkgrndImg);
 });
</script>
</head>
<body>
  <div id='testDiv' style="border:2px solid red;width:400px;height:400px;
     position:absolute;left:100px;top:100px;"> Some SVG Div </div>
  <svg ... /svg>
Run Code Online (Sandbox Code Playgroud)

svg .../svg与后台使用的svg相同,显示正确.

在查看各种解决方案后,我主要依靠这篇文章.我还试图通过使用z-index模拟背景SVG图像并将Div中的图像定位为图像,但这不是一个好的修复.我想让SVG作为背景图像在浏览器中顺利运行,因为至少SVG渐变在所有现代浏览器中都得到了很好的支持,我认为SVG潜力得到充分实现的时间终于到来了.

javascript jquery svg

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

仅具有绝对定位元素的 WYSIWYG HTML 编辑器

我读过很多关于在 HTML 中使用绝对定位的批评。尽管如此,我希望有一个简单的开放软件工具,它可以让我拥有一个快速的 HTML 页面原型,所有元素都通过拖放所见即所得机制具有绝对定位。通常,即使是 SVG 编辑器也可以完成,并且有很多好的编辑器,但是它们没有可以拖放的 HTML 表单组件,以便为具有表单的页面提供更逼真的 HTML 原型外观和感觉。如果原型在演示中是可以接受的,那么所有其他 HTML、CSS、Jquery 和其他编码都会从那里继续进行,绝对定位就位。生成的样式可以是内联的,也可以是单独的,这无关紧要。

所以,你会问我为什么不首先使用真正的 HTML 编辑器?嗯,问题是原型被接受后的步骤只需要元素的绝对定位,我审查的所有HTML编辑器都没有绝对定位的元素。我不想用什么以及为什么要求来混淆这个问题。
原型页面将由不太专业的 HTML 编码人员开发。只是一些基本的 HTML 元素,但肯定所有 Form 元素都是我需要的。

总结一下:

  1. 在 Windows 和 Linux 上可用的最好的免费 HTML 所见即所得编辑器是什么,它可以提供拖放界面,其中生成的底层 HTML 代码具有绝对定位元素。
  2. 在这个主题上,尽管这更像是一个事后分析的问题:HTML 中元素的绝对定位最大的缺点是什么(如果有的话)?

之前有人提出的问题:wysiwyg html editor build in html/javascript for position absolute elements也无济于事。

html wysiwyg positioning editor absolute

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

PhP 5.4中的PhP上传进度无效.会话变量未设置

我在一开始就遇到了PhP文件上传进度监视器的问题.

首先,这是相关的PhP.ini设置(指令,本地值和主值):

     session.upload_progress.cleanup    On  On
     session.upload_progress.enabled    On  On
     session.upload_progress.freq   1%  1%
     session.upload_progress.min_freq   1   1
     session.upload_progress.name   PHP_SESSION_UPLOAD_PROGRESS  PHP_SESSION_UPLOAD_PROGRESS
     session.upload_progress.prefix upload_progress_    upload_progress_
Run Code Online (Sandbox Code Playgroud)

这是表格(简化):

     <form id="fileupload" style="position:relative;" target="iframe_fileupload" action="http://www.athiyoga.org/testupload.php" method="POST" enctype="multipart/form-data">
            <input type="hidden" name="<?echo ini_get("session.upload_progress.name");?>" value="first"/>
             <input type="file" name="file_1">
            <button type="submit" >Start Submit</button>
      </form>
Run Code Online (Sandbox Code Playgroud)

我有JQUERY Ajax代码,在同一个PhP文件中(当然,作为JS脚本),如:

    $('#fileupload').submit(function(event){

    //UPDATED THIS PART after reading: http://stackoverflow.com/questions/19336610/delay-in-populating-session-upload-progress-data
    //POSTING the magic variable PHP_SESSION_UPLOAD_PROGRESS during status inquiry too

       var params = {PHP_SESSION_UPLOAD_PROGRESS:"first", some_var:20 };
       var data_params = jQuery.param( params );
       setTimeout(function(){
              upload_promise = $.ajax({
                url: 'upload_status.php', 
                data: data_params,
                dataType: …
Run Code Online (Sandbox Code Playgroud)

php ajax jquery file-upload

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

为什么 node/Express 中的 req.ip 返回冒号分隔的 IP 地址?

我正在尝试记录远程客户端 IP。听起来很基本,Express 在请求对象上提供了“ip”属性,如 req.ip 中一样,以获取此信息。此外,还有 req.ips 可以从涉及代理的 X-Forwarded-For 获取多个 IP 地址。我还尝试了 npm 模块请求-ip。我的问题是它们都返回客户端 IP 地址,如

 ::ffff:A.B.C.D
Run Code Online (Sandbox Code Playgroud)

其中 ABCD 确实是我正在寻找的地址。但是,我的问题是:那里的前缀是什么?我可以理解 req.ips 或 X-Forwarded-For 返回多个 IP 地址,但即使在那里我也希望真正的 IP 地址不是空值。

当然,我可以获得最后一个地址,但我想知道冒号分隔的空白条目是什么意思,即使在尝试获取单个 req.ip 地址时也是如此?

node.js express

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

如何使用非 websockets 传输使用 JS SIP 库?

这个问题有人问有人在Quora上这里,但没有回应。除了更改 jsSip 的源代码之外,是否有任何解决方案?

问题是大多数与 webRTC 一起使用的 JS SIP 库都是通过 websockets (RFC 7118) 实现的。此外,Chrome 现在需要在 https 上运行 getUserMedia 接口,这对 SIP 服务器端提出了额外的要求。SIP 服务器还必须支持 websockets、SRTP、DTLS 等。

如果 SIP 呼叫是通过浏览器进行的,则所有这些都是有意义的,无论是作为 webRTC 的信令机制还是通过网页的非 webRTC 电话呼叫。

但是,当 SIP 服务器在本地网络上并且必须从应用服务器发起 SIP 呼叫时,所有这些要求都不再适用。应该可以通过普通 UDP 进行 JS SIP 调用,而无需在 SIP 服务器上运行 http 服务器,因为在我的情况下,http 服务器与应用程序服务器本身集成在一起。

Scenario 1 as supported bymost JS SIP libraries:
JSSIP (in HTML page <------>websockets<---->[http-builtin with SIP server]<---->PSTN

Scenario 2 which applies to the question:
JSSIP (in HTML page <--https---->app-server with https-server<----local net--->[SIP server] <-----> …
Run Code Online (Sandbox Code Playgroud)

sip node.js jssip

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

etag 中的 W/ 从哪里出现?

当我没有添加它时,我对 W/ 在 etag 中的显示方式感到困惑。我正在使用 Node.js http 服务器模块并有一个 Nginx 作为反向代理。我让浏览器看到 Node.js 服务器生成的 Etag,但带有 W/ 标记。

有人能解释一下 W/ 来自哪里吗?浏览器是否根据其确定它是一个弱 etag 来插入它?我希望浏览器在我发送时得到它。没有 W/ 前缀。

这是在浏览器中看到的 Etag 标头。

etag: W/"asv1534746804282-d62serveav"
Run Code Online (Sandbox Code Playgroud)

当试图与 if-none-match 进行比较时,我必须去掉 W/. 另外,对于 304 状态响应,我是否必须再次发送 Etag?

编辑:我自己添加了 W/ 以便 Nginx 保持不变。我希望我的假设是正确的。看来是。

etag http nginx http-headers node.js

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

如何使Node.js的fs.appendFile方法立即刷新到磁盘?

我正在使用appendFile方法将内容追加到文件中。以下是该代码的过度简化版本。足以说明问题。我的问题是,如果进程被杀死,文件的内容将滞后于通过appendFile写入的最后数据。换句话说,传递给fs.appendFile附加的所有数据都不会写入磁盘。如何解决这个限制?我不希望使用任何fs方法的同步版本

  fs = require('fs');
  myVal       = 1;

  setInterval (function() {
   ++myVal;
    fs.appendFile("/tmp/test.d", myVal +":",'utf8', function(err) {
       console.log(myVal);
    });
  }, 10000);
Run Code Online (Sandbox Code Playgroud)

node.js

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

在多个数据库的主目录中配置 .my.cnf 不起作用。适用于单个数据库

这是我的 .my.cnf 文件:

 [client]
 user=user1
 password=somePasswd1
 database=someDb
 [client2]
 user=user1
 password=somePassed2
 database=someotherDb
Run Code Online (Sandbox Code Playgroud)

如果我只有一个条目,它会起作用,例如:

 [client]
 user=user1
 password=somePasswd1
 database=someDb
Run Code Online (Sandbox Code Playgroud)

[客户]的意义是什么?它应该有什么?另外,如果我只想限制本地主机的这些用户密码怎么办?

mysql client config

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

尝试将 svg 圆圈居中在 div 中

我有一个简单的标记:

 <div style="background-color:red;">
    <svg>
         <circle cx="76" cy="76" r="71" 
           style="fill:yellow;stroke:purple;stroke-width:10" />
    </svg>
 </div>
Run Code Online (Sandbox Code Playgroud)

这里查看 jsfiddle

我无法理解底部圆圈的截断。我想要的只是一个带有完全居中的 SVG 圆的 div。我曾尝试设置框大小和填充,但无济于事。

html svg

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

正则表达式或其他方式在JavaScript中转换为类似驼峰的情况

我已经通过类似的帖子,但没有一个处理这个特定的情况.我想将一些旧的命名约定转换为类似驼峰的情况.但是,我希望转换仅限于以下内容:

一个字符串(在任何情况下由数字或数字组成)后跟一个下划线后跟一个字母表应该被相同的字符串替换,后面跟着相同的字母,但只有大写字母.而已.

一些例子:

aXc9tu_muKxx  ->  aXc9tuMuKxx
zdmmpFmxf     ->  zdmmpFmxf //unchanged 
_xfefx        ->  _xfefx    //unchanged
Z_9fefx       ->  Z9fefx    //EDITED after getting answers.
Run Code Online (Sandbox Code Playgroud)

因此,如果 ?在正则表达式中意味着出现1次或多次而[]用于指定字符范围,那么我可以想象源表达式将是:([0-9a-zA-Z])?_([0-9a -Za-Z])?

我愿意使用Javascript或任何Linux工具.我再次重申,转换只涉及两个字符_和紧随其后的字母,如果它确实是一封信._将被删除,信件将是大写的.如果它不是字母而是数字,则只删除下划线.

目标是转向骆驼案例,但保持旧命名约定的可读性,转换后可读性可能会受到损害.例如,THIS_IS_A_CONSTANT不会更改为THISISACONSTANT.

javascript regex camelcasing

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