小编Dus*_*ilk的帖子

在JavaScript中拆分字符串并检测换行符

我有一个小函数,我发现它从a中取一个字符串textarea,然后将它放入一个canvas元素中,并在行变得太长时包装文本.但它没有检测到换行符.这就是它正在做的事情以及应该做的事情:

输入:

Hello

This is dummy text that could be inside the text area.
It will then get put into the canvas.
Run Code Online (Sandbox Code Playgroud)

输出错误:

Hello this is dummy text
that could be inside the
text area. It will then
get put into the canvas.
Run Code Online (Sandbox Code Playgroud)

它应该输出什么:

Hello

This is dummy text that
could be inside the text
area. It will then get
put into the canvas.
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的功能:

function wrapText(context, text, x, y, maxWidth, lineHeight) {
    var words = …
Run Code Online (Sandbox Code Playgroud)

javascript string split canvas line-breaks

40
推荐指数
3
解决办法
16万
查看次数

位置元素在背景图像.但BG img会随窗口改变大小.CSS

我有一个背景图像,它改变了窗口大小的大小,我需要在它上面放置一个元素,使它总是在相对于背景图像的相同位置.

怎么样!?

CSS

background:url("http://placehold.it/100x100") no-repeat center center fixed;
-webkit-background-size:"cover";
-moz-background-size:"cover";
-o-background-size:"cover";
background-size:"cover";
Run Code Online (Sandbox Code Playgroud)

背景图像覆盖整个背景并随窗口改变大小,但通过叠加来保持比例.

编辑 - 2016年

我用纯CSS解决这个问题的方法是将元素放在中间,然后使用calc函数正确地偏移它.然后相应地调整它的大小我使用vmin值:

$offset-top: ...;
$offset-left: ...;

.element {
  top: 50%;
  left: 50%;
  transform: translate(calc(-50% + #{$offset-top}), calc(-50% + #{$offset-top}));
  width: 50vim; 
  height: 50vim;
}
Run Code Online (Sandbox Code Playgroud)

css position cover background-image

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

画布受到跨源数据工作的污染

我正在编写一个脚本(或编辑和黑客的东西)来编辑页面上的图像外观.我知道javascript的基础知识,但这是我第一次看画布.所以忍受我

我收到这个错误:

无法从画布获取图像数据,因为画布已被跨源数据污染.

所以继承我的代码片段抛出错误:

var canvas = document.createElement('canvas'),
            context = canvas.getContext('2d'),
            height = img.naturalHeight || img.offsetHeight || img.height,
            width = img.naturalWidth || img.offsetWidth || img.width,
            imgData;


        canvas.height = height;
        canvas.width = width;
        context.drawImage(img, 0, 0);

        console.log(context);
        try {
            imgData = context.getImageData(0, 0, width, height);
        } catch(e) {}
Run Code Online (Sandbox Code Playgroud)

现在我发现这篇文章:

http://bolsterweb.com/2012/06/grabbing-image-data-external-source-canvas-element/

但我不知道如何使它符合我的需要..

我知道这一切都归功于安全性和所有这一切 - 但是有没有可以解决这一切?

谢谢

编辑

哦等等..错误是因为你不能getImageData ..所以有没有让它'本地'

javascript canvas cors

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

SourceTree - 使分支成为新的主人

我使用GIT和Sourcetree作为gui.

我有两个分支 - 主和功能01.我现在想要在feature-01上覆盖master上的所有内容.

在必须回滚master上的一些更改后,我不得不这样做.然而,我回滚了新分支上的更改,让分支成为100%,我想要主人,但现在当我合并两个 - 主人保持所有回滚的更改,它应该像分支中一样丢弃: /

git atlassian-sourcetree

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

Flutter Bloc equatable 状态未使用 Map of Strings 属性进行更新

我的 Bloc 状态没有更新,我发现问题可能是Map<String, Map<String, String>未正确比较的属性。如果我错了,请纠正我,但状态会在其他属性更改时更新,而不是在imageUrls属性更新时更新。

这些是我的状态对象

abstract class PropertiesState extends Equatable {
  const PropertiesState();
}

class PropertiesLoaded extends PropertiesState {
  final int count;
  final List<Property> properties;
  final Map<String, Map<String, String>> imageUrls;

  const PropertiesLoaded({
    this.count,
    this.properties,
    this.imageUrls,
  });

  @override
  List<Object> get props => [count, properties, imageUrls];
}
Run Code Online (Sandbox Code Playgroud)

imageUrls 字段可以有任何字符串键/值对。我无法找到有关如何执行此操作的任何信息。

谢谢您的帮助!

dart flutter bloc flutter-bloc

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

在Angular 2和Ionic 2中访问整个应用程序的关键数据

什么是存储我可以在Angular 2和Ionic 2 - typescript中的整个应用程序访问的数据的最佳方式.

对于用户信息,我最初的想法是只在每个需要的文件中导入User类,但由于我需要的是一个用户ID,我认为最好有一些配置文件,也许是App类 - 我也可以存储环境信息和网址等.

我实际上不知道围绕这个的最佳实践是什么,并且在这个主题上找不到多少.

class typescript ionic2 angular

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

排序对象然后进一步细分 - javascript

好吧所以我有一个这样的对象:

object = {};

object.set_1.date = <date object or unix time stamp>
object.set_1.day = "Sunday";
object.set_1.total = 12;

object.set_2.date = <date object or unix time stamp>
object.set_2.day = "Sunday";
object.set_2.total = 19;

object.set_3.date = <date object or unix time stamp>
object.set_3.day = "Monday";
object.set_3.total = 15;
Run Code Online (Sandbox Code Playgroud)

第四个.

有没有办法按天对这些对象进行排序,然后按总计对每一天进行排序?

我确信有多种不同的方法来实现这一目标.任何人都可以帮忙吗?什么是最好的方法呢?

javascript sorting jquery object

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

Javascript - 检查字符串是否是数组中字符串的一部分

我有一个列出几个网站的数组:

var validSites = new Array();
validSites[0] = "example_1.com";
validSites[1] = "example_2.com";
validSites[2] = "example_3.com";
Run Code Online (Sandbox Code Playgroud)

现在我有一个小脚本,可以检查你所在的网址,并可以返回这样的内容:

example_1.com/something/something_else
Run Code Online (Sandbox Code Playgroud)

现在我需要检查该地址是否是有效站点之一.所以

example_1.com/*ANYTHING* 
Run Code Online (Sandbox Code Playgroud)

会传递正确的.但

exampleshmample.com
Run Code Online (Sandbox Code Playgroud)

会传递不正确.

现在我知道你可以做一个indexOf(),它可以检查字符串是否是字符串的一部分,如果为false则返回-1.但我如何通过整个阵列检查它?

Ps - 用于Chrome扩展程序.

谢谢

javascript arrays google-chrome

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

setInterval 指定 ID 号

由于超出我的原因,我正在寻找一种方法来创建具有特定 ID 的 setInterval 。

例如:

当您创建 setInterval 并将其分配给变量时,如下所示:

var myInterval = setInterval(function(){..},100);
Run Code Online (Sandbox Code Playgroud)

myInterval 实际上等于一个数字。

因此,当您清除间隔时,您可以转到clearInterval(myInterval),或使用它等于的数字。

myIntertval === 9;
clearInterval(9);
Run Code Online (Sandbox Code Playgroud)

我怎样才能使 myInterval === 20. 从而给我的 setInterval ID 为 20.

有可能吗?或者我只是很傻,应该以正确的方式做每件事。

javascript setinterval

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

THREE.js - 将粒子均匀地放置在对象面上而不是顶点上

目前我已经设法创建了一个particleCloud,其粒子出现在我导入的对象的每个顶点.然而,我试图让粒子首先定位在物体的平面上,而不是它们之间的点,然后在这些面上均匀分布粒子.

基本上我正试图让我的3D物体由粒子组成

这是我到目前为止:

var loader = new THREE.JSONLoader();
loader.load('./resources/model.json', function (geometry, materials) {

    var material = new THREE.MeshFaceMaterial(materials);
    var model = new THREE.Mesh(geometry, material);

    var particleCount = geometry.vertices.length,
        particles = new THREE.Geometry(),
        pMaterial = new THREE.PointCloudMaterial({
            color: 0xFFFFFF,
            size: 1
        });

    for (var p = 0; p < particleCount; p ++) {
        particle = model.geometry.vertices[p];
        particles.vertices.push(particle);
    }
    particleSystem = new THREE.PointCloud(particles, pMaterial);
    particleSystem.position.set(0, -100, 0)
    particleSystem.scale.set(100,100,100)
    scene.add(particleSystem);

});
Run Code Online (Sandbox Code Playgroud)

编辑 - 1

我附上了一张图片来试着描述我现在拥有的东西以及我想要实现的目标.它以立方体上的正面为例.我的目标将有更多的方面.

在此输入图像描述

javascript three.js

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

使用不同的域从内部刷新iframe

我有一个网页,其中包含来自不同域的iFrame.现在我在iFrame中有一个按钮,当按下时,需要刷新或重新加载iframe.

我尝试了一些因跨域尝试而被阻止的方法.

html javascript jquery cross-domain cross-domain-policy

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

如果完成或失败,jQuery slideDown回调..'always'选项

愚蠢的问题,但我似乎无法弄明白.

在jquery文档中,它在slideUp()函数中显示了一个"始终"的选项.一旦动画完成或失败,它将调用一个函数我如何实现这个?

http://api.jquery.com/slideUp/

$(".toHide").slideUp(function(){
   alert();
})
Run Code Online (Sandbox Code Playgroud)

无论动画后是什么,基本上都希望调用该警报..当前只有在完成没有失败时调用.

如果类尚不存在,动画将失败

jquery

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

失败后重启承诺

我正在使用Nodejs和Q来运行一系列异步函数.如果一个失败,我想运行另一个函数,然后再次启动序列.这是它的原样:

var promise = database.getUserCookies(user)
    .then(function (data){
        return proxy.search(data);
    })
        .fail(function (data) {
            if (data.rejected === 302) {
                var relogin = database.fetchAuth(data)
                    .then(function (data) {
                        return proxy.login(data)
                    })
                    .then(function (data){
                        return database.saveCookies(data);
                    })
                    .then(function (data){
                        //Restart the promise from the top.
                    })
            }
        })
    .then(function (data){
        return responser.search(data);
    })
Run Code Online (Sandbox Code Playgroud)

javascript node.js promise q

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