小编Cer*_*rus的帖子

使用EXIF和BinaryFile会出错

我正在尝试使用input[type='file']移动网络浏览器在拍摄照片后在画布中使用正确的方向绘制照片我正在使用:

fileReader.onloadend = function() {
    var exif = EXIF.readFromBinaryFile(new BinaryFile(this.result));

    switch(exif.Orientation){
       case 8:
           ctx.rotate(90*Math.PI/180);
           break;
       case 3:
           ctx.rotate(180*Math.PI/180);
           break;
       case 6:
           ctx.rotate(-90*Math.PI/180);
           break;
    }
};
Run Code Online (Sandbox Code Playgroud)

但我明白了:TypeError: First argument to DataView constructor must be an ArrayBuffer

我怎样才能得到这个数组缓冲区?

我正在使用EXIF.js和BinaryFile.js

javascript exif filereader

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

为什么使用innerHTML比JQuery的append()函数更慢地将大量元素附加到DOM?

我有一个vanilla JavaScript函数来测试向DOM添加大量元素:

var start = new Date().getTime();
var blah;
var div = document.getElementById("me");
for (i = 0; i < 5000; ++i) {
    div.innerHTML += "<div>" + i + "</div>";//Simply add to div.
}
var end = new Date().getTime();
var time = end - start;
alert('Execution time: ' + time);
Run Code Online (Sandbox Code Playgroud)

结果:

         Chrome           IE10
         ------           -----  
Vanilla      39             130  (seconds)
Run Code Online (Sandbox Code Playgroud)

JQuery的:

for (i = 0; i < 5000; ++i) {
    $("#me").append("<div>" + i + "</div>");//Now using append instead.
}
Run Code Online (Sandbox Code Playgroud)

结果

         Chrome           IE10 …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

wcf服务返回"方法不允许"错误

我正在尝试将对象参数作为json格式传递给wcf restful service.

像这样的服务conratc代码;

[WebInvoke(
    Method = "POST",
    BodyStyle = WebMessageBodyStyle.Wrapped,
    ResponseFormat = WebMessageFormat.Json,
    RequestFormat = WebMessageFormat.Json,
    UriTemplate="PR")]
[OperationContract]
TWorkRequestPostResult PostRequest(TWorkRequestPostArgs args);
Run Code Online (Sandbox Code Playgroud)

和我的web.config文件一样;

<system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <!-- To avoid disclosing metadata information, set the value below to false before deployment -->
          <serviceMetadata httpGetEnabled="true" />
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" …
Run Code Online (Sandbox Code Playgroud)

rest wcf

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

我想用 javascript 进行高级搜索。如何?

我使用下面的代码进行基本的、区分大小写的、特定于术语的搜索。它现在可以工作,但我想要一些东西(按重要性顺序):

1:忽略大小写(即“hi”和“Hi”都是相同的。toLowerCase不是一个选项,也不是同一件事)

2:例如,如果搜索查询是“Search Term”且搜索字符串是“searching terms”,则会产生命中。

3:即使在找到命中后仍搜索整个字符串以获取更多命中。

目的是搜索<p>具有特定id术语的标签。如果有则显示它。最终,我将在循环中使用它,搜索许多<p>标签并显示命中的标签并隐藏未命中的标签。

代码:

<!DOCTYPE html>
<html>
    <body>
        <p id="demo">Click the button to locate where in the string a specifed value occurs.</p>
        <p id="demo1" style="display:none;">Hello world, welcome to the universe.</p>
        <button onclick="myFunction()">Try it</button>

        <script>
            function myFunction() {
                var x = document.getElementById("demo1")
                var str = x.innerHTML.toString();
                var n = str.indexOf("welcome");
                if (n != -1) {
                    x.style.display = 'inline';
                } else {
                    x.innerHTML = 'Negative';
                    x.style.display = 'inline';
                }
            } …
Run Code Online (Sandbox Code Playgroud)

javascript search

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

javascript中变量范围的混淆

我在js中有一个函数,它填充一个全局数组,其值从服务器脚本获取为json:

function populateValues(id) {
    var values=new Array();

    $.getJSON(
        '<?PHP echo base_url();?>admin/forums/getForumById/' + id ,
        function(data){
            $.each(data,function(k,v){
                values.push(v);
            });
            alert(values[1]);
        }
    );
}
Run Code Online (Sandbox Code Playgroud)

这很好,并提醒所需的值.但是当我尝试在循环之后提醒它时,值会丢失并且我得到一个未定义的.情况如下:

function populateValues(id) {
    var values=new Array();

    $.getJSON(
        '<?PHP echo base_url();?>admin/forums/getForumById/' + id ,
        function(data){
            $.each(data,function(k,v){
                values.push(v);
            });
        }
    );
    alert(values[1]);
}
Run Code Online (Sandbox Code Playgroud)

是否由于某些闭合构造形成?还是我缺少一些基本概念?只是好奇地知道为什么即使我将数组声明为全局,也不会警告值.请说清楚.

javascript jquery

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

如何在else函数中使用if函数

我试图if在命令的else功能中使用一个功能preg_match.

$month1data 从CURL获取并已检查工作.

以下代码是:

global $attempt;
$attempt = mysql_escape_string($_GET['attempt']);

if (preg_match('/<td colspan=8(.*)<\/table/s', $month1data, $matches)) {
    //Content found do stuff here

    unset ($ch);
    unset ($cache);
    unset ($firstmonthdata);
    unset ($matches);
} else { // start else preg match
    if ($attempt = '3') { //start if attempt = 3

        echo 'failed 3 times - showing error';
        echo '<script type="text/javascript">
        <!--
        window.location = "http://www.website.com/error.php?error=2"
        //-->
        </script>';

    } // end if attempt = 3
    else { //start if attempt …
Run Code Online (Sandbox Code Playgroud)

javascript php preg-match

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

自我执行函数在条件之后传递对象

我遇到了一个自执行函数,它在声明包含var的条件下执行,如果它不存在则传递一个对象.

例:

var myFunc = (function(myFunc){}(myFunc || {}));
Run Code Online (Sandbox Code Playgroud)

为什么有一个"或"条件运算符传递一个对象?

javascript oop parentheses

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

解释这个DOM遍历顺序

我将以下页面编写为DOM遍历演示:

<html>
    <head>
        <title>DOM Traversal</title>
    </head>
    <body>
        <h1>Sample H1</h1>
        <div id="text">
            <p>Sample paragraph</p>
        </div>
    </body>
    <script>
        // Traversing the DOM tree
        "use strict";

        var node = document.body;

        while(node) {
            console.log(node);
            node = node.lastChild;
        }
    </script>
</html>
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,我得到的输出是body标签后跟的script标签.这怎么可能?script标签不是标签的兄弟body吗?另外,为什么不body遍历子节点?

javascript

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

使用innerHTML来检测角色的出现次数?

我一直在使用此代码来检测包含分号的表中的元素,然后更改背景颜色:

var x = document.getElementsByTagName("TD");
var i=0;
for (i=0;i<x.length;i++) {
    if (x[i].className=="ms-vb-title") {
        if (x[i].innerHTML.indexOf(";") != -1) {
            x[i].style.cssText="background-color:#ccc !important;";
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但我现在想要根据分号的出现次数来改变颜色,所以例如小于2会突出显示红色,2-4之间会突出显示橙色而超过4会突出显示绿色......这是通过修改来实现的现有的代码?

javascript

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

如果是空格,则将每个X字符划分为行,如果不等待空格

我有这个工作脚本,每行79个字符.我想添加一个条件,如果第79个字符是空格,它只会破坏该行,如果没有,那么它将在下一个空格中断.(这样的话不会破坏)

这是我目前的功能.(我不知道如何在表达式中添加这个条件)

function myFunction() {
    var long_string = document.getElementById('textg').innerHTML;
    document.getElementById('textg').innerHTML = long_string.replace(/(.{79})/g, "$1<br>");
}
Run Code Online (Sandbox Code Playgroud)

javascript string

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

标签 统计

javascript ×9

jquery ×2

exif ×1

filereader ×1

oop ×1

parentheses ×1

php ×1

preg-match ×1

rest ×1

search ×1

string ×1

wcf ×1