小编mat*_*ler的帖子

在托管服务器上的美国Web应用程序中接收SMS消息

我正在尝试构建一个简单的Web应用程序,允许人们从他们的手机发送短信到我的应用程序.

我之前看过这个问题:

通过Web应用程序接收SMS消息在.NET应用程序中
接收SMS消息

......但我有一些独特的(我认为)情况.

  1. 我期待的消息数量非常少(<1,000 /月)
  2. 我的用户都在美国
  3. 我不需要发送短信 - 我只是想让用户能够向应用程序发送消息

我知道像Clickatell这样的主要短信"提供商".然而,他们的服务似乎是巨大的矫枉过正.

理想情况下,我希望用户能够向我设置的EMAIL帐户发送短信.然而,基于(表面)调查,看起来这是不可能的.(例如,我在我的iPhone上尝试过,并且没有收到消息).

所以,我想下一个最好的选择是我的用户将SMS消息发送到专用电话号码,并将这些消息转发到我服务器上的电子邮件帐户.我想这会奏效.但我不知道如何进行转发部分,或者甚至可能.

Clickatell offers a service like that, but they charge a few hundred bucks to set up a number, a few hundred bucks to RENT the number each month, and a few pennies for each message. And, they only offer non-US phone numbers. (In the US, you apparently need to have a "short-code", that's INCREDIBLY expensive). Seems like there should be a MUCH simpler approach. …

sms sms-gateway

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

highcharts:停止图表捕获鼠标事件,或者在整个图表上捕获鼠标单击

所有,

我在我正在使用的网络应用程序中使用HighCharts,一般来说,我非常喜欢它.

但是,我很难弄清楚如何在整个图表上捕获鼠标.

换句话说 - 我想知道用户何时点击图表上的任何地方(例如,绘图区域,标题,x轴或y轴,图表元素周围的边距和填充等)

或者,我想完全禁用事件,所以我可以将事件捕获到容器本身.

更详细的版本......

我有一个包含我的HighChart的DIV.

我想知道用户是否在该DIV中单击ANYWHERE.

所以 - 最初我尝试将一个"onclick"事件附加到DIV,但是从未被解雇,大概是因为点击被HighChart困住了.

因此,在设置HighChart的代码中,我添加了以下内容:

var chart = new Highcharts.Chart({
    chart: {
        renderTo: "container",
        events: {
            click: function(event) {
                // do something
            }
        },
        ...
    }
    ...
});
Run Code Online (Sandbox Code Playgroud)

如果用户点击绘图区域内的某个位置,则可以正常工作,但如果她点击图表中的任何其他位置(例如,x轴,y轴,标题,图表元素周围的填充等),则无效

那么 - 如何使整个图表可以点击?

提前谢谢了!

highcharts

12
推荐指数
2
解决办法
7795
查看次数

我可以在不更改整个文件结构/ Xcode项目的情况下更改Cordova/iOS应用程序的"显示名称"吗?

所以,我正在开发我的第一个Cordova应用程序,我有一个可能是典型的noob问题......

我用这个命令创建了我的应用程序:

cordova create MyFirstApp com.[my_domain].myfirstapp MyFirstApp
Run Code Online (Sandbox Code Playgroud)

我可以看到,这个名为目录下创建一个复杂的文件结构MyFirstApp,名为Xcode项目MyFirstApp.xcodeproj,和几十间开头的文件的MyFirstApp(例如,MyFirstApp-Info.plist中,MyFirstApp-Prefix.pch等).

所有这一切都很好.

但是,在完成开发之后 - 我意识到我喜欢应用程序的名称,因为它在用户的主屏幕上显示为不同的东西(例如,"酷应用程序!").

我可以更改"显示的名称"而不会弄乱目录结构和Xcode项目吗?

看起来name节点中config.xml 没有这样做 - 该值似乎控制的不仅仅是名称的显示方式.(例如,如果我改变它,cordova build iOS失败并且Xcode开始抱怨...)

xcode ios cordova

11
推荐指数
3
解决办法
7339
查看次数

更好地练习HTML5 Web应用程序:使用getElementByID或存储引用?

我正在使用HTML5构建我的第一个网络应用程序之一,专门针对iPhone.

由于我对此很陌生,我正在努力开发一些良好的编码习惯,遵循最佳实践,优化性能,并最大限度地减少资源受限iPhone上的负载.

我需要经常做的事情之一...我有很多div(每个都有一个唯一的id),我经常更新(例如,使用innerHTML)或修改(例如,使用webkit转换和转换的样式属性) ).

一般来说 - 每次我需要一个div的句柄时,我最好使用getElementByID,还是应该在开始时存储对"全局"变量中访问的每个div的引用?

(我在引号中使用"global",因为我真的只有一个真正的全局变量 - 它是一个将所有"全局"变量存储为属性的对象).

我假设每次使用getElementByID都必须有一些开销,因为函数需要遍历DOM才能找到div.但是,我不确定这个功能是多么费力或有效.

使用全局变量来存储每个元素的句柄必须占用一些内存,但我不知道这些引用是否只需要少量的RAM,或者更多.

那么 - 哪个更好?或者,这两个选项是否会消耗如此微不足道的资源,我应该担心这会产生更易读,可维护的代码?

提前谢谢了!

javascript html5

9
推荐指数
1
解决办法
528
查看次数

在JavaScript中对大型(ish)数字数组进行排序的最快方法是什么?

在我的应用程序中,我需要对大型数组(100,000到1,000,000之间)的随机数进行排序.

我一直在使用内置的array.sort(comparisonFunction)compareFunction看起来像这样:

function comparisonFunction(a,b) {
    return a-b;
}
Run Code Online (Sandbox Code Playgroud)

这很好用,但我读过(例如,Native JavaScript排序执行比实现的mergesort和quicksort慢),有更快的选项,特别是如果您的要求满足特定条件:

  1. 我只需要对数字进行排序(例如,不是对象或字母数字数据)
  2. 数据是随机的(没有机会已经订购)
  3. 排序不需要稳定

那么 - 在这种情况下,最快(或足够接近)的排序算法是什么?

并且,是否存在规范(或至少相对理想)的JavaScript实现?

[UPDATE]

Yikes ...发布后30秒内两张投票!因此,快速澄清 - 在相关问题中,OP需要稳定的排序.因为我没有 - 我想知道这是否会改变答案(也就是说,如果您事先知道您的数据不会被预先排序,并且您不需要稳定的排序,也许可以使用更快的排序选项).

也许答案是"不",但这就是我要问的原因.

[更新#2]

这是quicksort的一个实现,除非我犯了一个错误 - 轻松地击败本机排序函数:

function comparisonFunction(a, b) {
  return a - b;
}

function quickSort(arr, leftPos, rightPos, arrLength) {
  let initialLeftPos = leftPos;
  let initialRightPos = rightPos;
  let direction = true;
  let pivot = rightPos;
  while ((leftPos - rightPos) < 0) {
    if (direction) {
      if (arr[pivot] < arr[leftPos]) …
Run Code Online (Sandbox Code Playgroud)

javascript arrays sorting

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

访问SQL查询:查找表中每个不同条目的最近日期的行

所有,

我确信这是一个非常简单的SQL查询问题,但我确信这是一种很好的方法,也是一种非常糟糕的方法.留给我自己的设备,我很可能最终得到后者.所以...

我在Access中有一个表,其数据如下所示:

ID      Value  As_of
1173    156    20090601
1173    173    20081201
1173    307    20080901
1173    305    20080601
127     209    20090301
127     103    20081201
127     113    20080901
127     113    20080601
1271    166    20090201
1271    172    20081201
1271    170    20080901
1271    180    20080601
...
Run Code Online (Sandbox Code Playgroud)

我想得到的是每个唯一ID的"值",其中包含最新的"截止日期"(采用YYYYMM格式).

所以,我的结果集应如下所示:

ID      Value    As_of
1173    156      20090601
127     209      20090301
1271    166      20090201
Run Code Online (Sandbox Code Playgroud)

请注意,不同的ID将具有不同的"截止日期"日期.换句话说,我不能简单地识别全球最新的,然后选择该日期的每一行.

对于它的价值,该表总共有大约200,000行,以及大约10,000个唯一ID.

提前谢谢了!

sql ms-access

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

使用JavaScript控制iOS Web应用程序中列表上的垂直滚动和水平滑动

我正在创建一个专门针对手机的网络应用程序(主要是iPhone,但Android和WP即将推出......).

其中一个屏幕包含滚动的项目列表.我希望该列表的行为类似于内置的iOS Mail应用程序.

换一种说法...

  1. 如果用户触摸列表并向上或向下移动,则列表将垂直滚动.
  2. 如果用户向上或向下轻拂,则列表以自然动量垂直滚动
  3. 如果用户触摸列表并向左移动- 特定项目向左滑动,显示删除按钮.
  4. 重要 - 列表应该滚动项目应该滑动,但不能同时滚动.

所以 - 弄清楚用户的意图是很重要的,这意味着我可能需要阻止任何响应,直到我弄清楚用户是在垂直还是水平移动她的手指.

只需在列表容器上设置这些CSS样式......

overflow-y: auto;
-webkit-overflow-scrolling: touch;
Run Code Online (Sandbox Code Playgroud)

......我得到了#1和#2.所以,我需要弄清楚如何实现#3.

我的第一个想法是实现这样的东西(伪代码)......

  1. touchstart在列表容器上创建一个事件侦听器.在回调中,存储用户的起始触摸位置的x坐标和y坐标.
  2. touchmove在列表容器上创建一个事件侦听器.在回调中,计算用户手指移动的距离(例如,delta_x和delta_y)
  3. 如果delta_x delta_y 都小于10像素 - 不要做任何事情(不要滚动列表或滑动项目) - 因为我们还没有弄清楚用户是计划向上/向下移动还是向左/向右移动.
  4. 如果EITHER delta_x OR delta_y 超过10个像素 - 我们可以假设用户移动得足够远以表达她的意图.如果delta_y> delta_x,则假设她向上/向下移动,并允许列表滚动,但不要滑动项目.如果delta_x> delta_y,假设她向左/向右移动,那么我们应该允许项目滑动,但不允许列表滚动.

我预计我会在使用event.preventDefault()要么touchstarttouchmove滚动应该开始时控制.例如,

div.addEventListener("touchstart", function(e) {
    touchStart = {
        x: e.touches[0].pageX,
        y: e.touches[0].pageY
    }
}, false);
div.addEventListener("touchmove", function(e) {
    touchNow = {
        x: e.touches[0].pageX,
        y: e.touches[0].pageY
    }
    var
        dx …
Run Code Online (Sandbox Code Playgroud)

javascript jquery webkit web-applications ios

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

用于三线性插值的Javascript函数

所有,

想一想,我正在寻找一个三线性插值功能.

这是详细信息:

我有一个三维数据集:

  • 尺寸1从0到100变化,增量为5
  • 尺寸2从0到100变化,增量为5
  • 尺寸3从0到1变化,增量为0.1

所以,我有4851个总值(21 x 21 x 11).

如果我需要找到(10,25,0.3)的值 - 这很容易 - 我可以在三维数组中查找它.

但是,我需要能够提出最佳近似值,例如,给定(17,48,0.73)的维度值.

所以,我认为我正在寻找的是三线性插值(尽管我非常感谢任何有关更好方法的建议,或者暗示我完全是错误的话题......)

快速谷歌搜索出现了这个公式:

Vxyz = 
V000(1-x)(1-y)(1-z) +
V100x(1-y)(1-z) +
V010(1-x)y(1-z) +
V001(1-x)(1-y)z +
V101x(1-y)z +
V011(1-x)yz +
V110xy(1-z) +
V111xyz 
Run Code Online (Sandbox Code Playgroud)

这看起来像我正在寻找的,但我不确定x,y和z代表什么.如果我不得不猜测,x是一个比率 - 我的"目标"第一个维度值与我最近的两个值之间的距离,y是第二个维度的比率,z是第三个维度的比率.

当然,因为我真的不知道我在说什么,所以我不知道这是对还是错.

所以,理想情况下,我想要一些Javascript或伪代码,以确切地说明如何实现这一目标.

提前谢谢了!

javascript algorithm interpolation

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

绘制具有不同笔触样式的单个填充形状

是否可以在画布中绘制具有不同笔触样式的单个填充形状?

换句话说,我可以绘制一个蓝色三角形,并使每一面都有不同的颜色吗?

我意识到有一个不太理想的解决方案:

  1. 作为一条新路径,绘制没有笔划的三角形,填入,然后关闭路径
  2. 开始一条新路径,用第一个彩色笔划重绘第一面,关闭路径
  3. 开始一条新路径,用不同颜色的笔划重绘第二面,关闭路径
  4. 开始一条新路径,用不同颜色的笔划重绘第三面,关闭路径

简而言之,绘制一个没有笔画的填充形状,然后用独特的笔触样式重绘每一面.

对于单个三角形而言,这不是什么大问题,但如果你有许多更复杂的形状,这似乎效率低下.

那么 - 是否可以在路径的不同部分绘制具有不同笔触样式的单个形状?

html5 canvas

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

iOS5(Safari)的一个错误,"位置:固定"div和高大的形式

所有,

我正在开发一个包含非常"高"形式的Web应用程序.(高,这意味着它比典型的屏幕高几百%).

无论用户在表单中的位置如何,该设计都需要一个固定在屏幕底部的"页脚",它始终可见.

换句话说,无论用户是在靠近表单的顶部,中间还是底部,页脚都应该是可见的,并且表单应该在其下面滚动.

为了实现这一点,我创建了一个div作为div position:fixed,和bottom:0.

这适用于我测试过的所有浏览器,包括iOS5上的Safari.

除了有一个 bug ...

如果用户位于表单顶部附近,并将焦点放在其中一个文本字段上 - 正如预期的那样,iOS会显示键盘.

每次用户单击" 下一步"按钮时,iOS"选中"她到下一个字段.

当她通过反复单击" 下一步 " 向下进入表单时,iOS会自动"向上滚动"表单,因此她在表单上的位置仍然在视图中.

但是,iOS似乎没有更新position:fixed页脚div 的位置- 它与表单的其余部分一起错误地向上滚动.

如果用户解除键盘,div将恢复到"正确"的位置,因此这不是一个不可恢复的错误.但是,页脚移动的事实是一个明显的问题.

这是iOS实现的错误还是缺点position:fixed?或者,有什么我做错了吗?

提前谢谢了!

[UPDATE]

Remy Sharp(恰当地命名)刚刚position:fixed在iOS/Safari上撰写了一篇关于各种错误和问题的精彩而详细的帖子:http://remysharp.com/2012/05/24/issues-with-position-fixed-scrolling -on-ios /.如果您正在考虑position:fixed在针对iOS用户的网站上使用,那么这是必读的...

html css css-position ios5

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