小编Cra*_*aig的帖子

区分鼠标和键盘触发onclick

我需要找到一种方法来确定是否通过鼠标单击或按键激活了链接.

<a href="" onclick="submitData(event, '2011-07-04')">Save</a>
Run Code Online (Sandbox Code Playgroud)

我们的想法是,如果他们使用鼠标点击链接,那么他们可以继续使用鼠标选择他们下一步做什么.但是如果他们在页面上标签并且他们选中了Save链接,那么我将打开然后下一行进行编辑(该页面就像一个电子表格,每行都可以使用ajax编辑).

我认为可以查询事件参数按下哪个鼠标按钮,但是当没有按下任何按钮时,答案为0,这与鼠标左键相同.他们认为我可以从事件中获取keyCode,但是它会以未定义的形式返回,所以我假设鼠标事件不包含该信息.

function submitData(event, id)
{
    alert("key = "+event.keyCode + "  mouse button = "+event.button);
}
Run Code Online (Sandbox Code Playgroud)

总是返回"key = undefined mouse button = 0"

你能帮我吗?

javascript keypress onclick mouseevent

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

如何以编程方式选择地图引脚

我是Maps Concept的新手.

请找一次附图.

在此输入图像描述

当我点击"pin"时,我收到消息说"欣赏你的笑容"或任何文字.....现在我想要...当我们选择表视图时,我需要为该引脚提出该消息(与该针的用户交互)...

我在下面的代码中使用了这个地图和引脚.

    -(void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:YES];
customLocation.latitude=[casesobjc.latitude_string doubleValue];
        customLocation.longitude=[casesobjc.longitude_string doubleValue];
 MapViewAnnotation *newAnnotation = [[MapViewAnnotation alloc] initWithTitle:casesobjc.locationForMap_string andCoordinate:customLocation];
[mapView addAnnotation:newAnnotation];
}
- (MKAnnotationView *) mapView: (MKMapView *) mapView viewForAnnotation: (id<MKAnnotation>) annotation {
 MKPinAnnotationView *pin = (MKPinAnnotationView *) [mapView dequeueReusableAnnotationViewWithIdentifier: @"annotation_ID"];
if (pin == nil) {
        pin = [[MKPinAnnotationView alloc] initWithAnnotation: annotation reuseIdentifier: @"annotation_ID"];
    } else {
        pin.annotation = annotation;
    }
    pin.pinColor = MKPinAnnotationColorPurple;
    pin.animatesDrop = YES;
    pin.canShowCallout=YES;
return pin;
}
Run Code Online (Sandbox Code Playgroud)

现在我将如下所示显示所有引脚.

在此输入图像描述

怎么做当我们点击表视图时,我需要显示该引脚的标题,就像我们选择引脚时的显示方式一样?

提前致谢

iphone objective-c map mkmapview ios

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

iOS:如何将图像修剪为有用的部分(删除透明边框)

我试图在iPhone应用程序中自动显示大部分透明png的有用部分.图像可以说是500x500,但它大多是透明的.在该图像中的某个地方是一个非透明的部分,我想尽可能大地向用户显示,所以我想从每一侧尽可能多地修剪(或者通过拉伸和移动来使它看起来像这样. UIImageView.有什么想法吗?

transparency uiimageview uiimage ios

12
推荐指数
1
解决办法
2751
查看次数

突出显示Bootstrap中的列表项

使用Drupal的Bootstrap模块我发现最新版本改变了一种风格

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus
Run Code Online (Sandbox Code Playgroud)

a.list-group-item.active, a.list-group-item.active:hover, a.list-group-item.active:focus
Run Code Online (Sandbox Code Playgroud)

由于我的列表项不在a标签内active,因此它们已经失去了亮点.风格本身非常简单,我可以自己重现它,但我更倾向于使用正式的Bootstrap方式来突出一个li.它是什么?

css twitter-bootstrap twitter-bootstrap-3

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

Symfony2功能测试选择复选框

我在编写Symfony 2功能测试时遇到问题,无法设置属于数组的复选框(即多个扩展的选择窗口小部件)

文档中,示例是

$form['registration[interests]']->select(array('symfony', 'cookies'));
Run Code Online (Sandbox Code Playgroud)

但它没有显示哪些html可以使用它并且它不适用于我的.这是我的表格的缩减版本

<form class="proxy" action="/proxy/13/update" method="post" >
    <input type="checkbox" id="niwa_pictbundle_proxytype_chronologyControls_1" name="niwa_pictbundle_proxytype[chronologyControls][]" value="1" />

    <input type="checkbox" id="niwa_pictbundle_proxytype_chronologyControls_2" name="niwa_pictbundle_proxytype[chronologyControls][]" value="2" />

    <input type="checkbox" id="niwa_pictbundle_proxytype_chronologyControls_3" name="niwa_pictbundle_proxytype[chronologyControls][]" value="3" />
</form>   
Run Code Online (Sandbox Code Playgroud)

一旦它在那里工作,我将转向手动制作的表格

<input type="checkbox" id="13" name="proxyIDs[]" value="13">
<input type="checkbox" id="14" name="proxyIDs[]" value="14">
<input type="checkbox" id="15" name="proxyIDs[]" value="15">
Run Code Online (Sandbox Code Playgroud)

我尝试过类似的东西

$form = $crawler->selectButton('Save')->form();
$form['niwa_pictbundle_proxytype[chronologyControls]']->select(array('3'));
$form['niwa_pictbundle_proxytype[chronologyControls][]']->select(array('3'));
Run Code Online (Sandbox Code Playgroud)

但第一个失败的说法select是在一个非对象上运行,第二个说 Unreachable field "".

functional-testing symfony

11
推荐指数
1
解决办法
3998
查看次数

Symfony2在单元测试中获得配置参数

我有一个Symfony2服务,使用依赖注入使用config.yml中的参数构造.我现在正在尝试对其进行单元测试,并发现单元测试无法访问容器,因此无法访问服务.所以我应该使用模拟数据自己构建一个.如果我现在可以读取config参数(首先是config_test.yml然后是config.yml等等),这对我来说是有意义的,但似乎也不可能.这似乎使单元测试服务变得麻烦,因为我需要将初始化参数编码到测试而不是配置文件中.

如果在单元测试期间确实无法使用config.yml中的参数构建服务,那么有没有人知道它为什么是Bad Thing™的逻辑?

unit-testing symfony

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

适用于移动应用和网站的Ionic和Google OAuth

我在Ionic应用程序中使用Google Plus身份验证插件时遇到问题,该应用程序与我们网站共享的API进行通信.

在Google控制台中,我有三个OAuth 2.0客户端ID,给出了示例ID

  • Android客户端(由Google服务自动创建)1.apps.google
  • iOS客户端(由Google服务自动创建)2.apps.google
  • Webapp 3.app.googles

它们都以相同的12位数字开头,以"apps.googleusercontent.com"结尾.

根据Google的文档,我应该能够通过添加标识API的客户端ID的范围设置来针对同一API项目对移动应用和网站进行身份验证,例如_scope:audience:server:client_id:3.apps.google_

this.googlePlus.login({
  'webClientId': '2.apps.google',
  'scope': 'scope:audience:server:client_id:3.apps.google'
})
Run Code Online (Sandbox Code Playgroud)

我已经能够从Google返回一个JWT,但是当我解码它时,我发现aud值与我的webClientId设置相匹配,它应该是范围的值.至于Ic,告诉我唯一持久保存clientID的地方(如Ionic所做的.gitignore文件不排除的那样)是config.xml

  <plugin name="cordova-plugin-googleplus" spec="git+https://github.com/EddyVerbruggen/cordova-plugin-googleplus.git">
    <variable name="REVERSED_CLIENT_ID" value="google.apps.2" />
</plugin>
Run Code Online (Sandbox Code Playgroud)

和package.json

  "cordova-plugin-googleplus": {
    "REVERSED_CLIENT_ID": "google.apps.2"
  }
Run Code Online (Sandbox Code Playgroud)

那么,我将哪些客户ID放在哪里,以便我的移动应用可以根据我们网站使用的相同API对用户进行身份验证?

oauth google-plus cordova ionic-framework ionic3

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

没有工作区的 Angular 库

我正在尝试开发一个新的库,打算将其放入三个新的 Angular 应用程序中,以及几个扩展来自该库的组件的组件,然后由这三个应用程序使用。在我看来,自然结构是每个应用程序、库和每个组件都有一个单独的存储库。

my-lib.git
app1.git
app2.git
component1.git
component2.git
Run Code Online (Sandbox Code Playgroud)

然而,到目前为止我看到的每一篇文章都是从创建工作区并在其中构建库开始的。由于每个组件都将在自己的时间线上开发和分发(通过私有 Gitlab,而不是 npm),应用程序开发人员会选择要包含哪些组件的版本,因此我觉得将它们全部放入一个存储库中是不对的。

为此我应该使用什么存储库结构以及如何开发 Angular 库而不将它们全部放入工作区?

angular-components angular angular-library

7
推荐指数
0
解决办法
1046
查看次数

创建地图图例以匹配OpenLayers.Style

我已经创建了一个OpenLayers.Style来为我的多边形着色,这个样式可以调整我的点和所有爵士乐,现在我想向用户解释这些样式代表什么.

我在OpenLayers中看不到任何允许我使用这些样式绘制自己的图例的东西.一切似乎都指向我发送数据的假定地图服务器,我没有.

目前看起来我将不得不绘制一些样本点/区域,屏幕抓住它们来制作我自己的传奇.是否有一种更好的方法可以直接在Style上进行,所以当Style更改时我不需要重新生成图像?

更新 我有一个很好的答案,依赖于GeoExt(以及ExtJS),我仍然想听听是否有人有一个jQuery兼容的答案.特别是如果它是普通的Javascript和OpenLayers.

legend openlayers

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

将字符串转换为double以进行坐标使用,Xcode

我有一个XML文件中的经度和纬度列表.我可以将lat和lon打印为字符串,但是当我将字符串转换为double时,我得到0.

这是我的代码:

NSString *latstring = [[NSString alloc] initWithString:theList.lat] ;
NSString *lonstring = [[NSString alloc] initWithString:theList.lon];
NSLog(@"latstring: %@, lonstring: %@", latstring, lonstring);

double latdouble = [latstring doubleValue];
double londouble = [lonstring doubleValue];
NSLog(@"latdouble: %g, londouble: %g", latdouble, londouble);
Run Code Online (Sandbox Code Playgroud)

当我记录'latstring'和'lonstring'时,我得到了正确的坐标,但是当我记录'latdouble'和'londouble'时,我得到0.

我需要lat和lon值为double,因此我可以在mapview中使用它们,因为它不允许我使用字符串作为坐标.

对此可能有一个非常简单的解释,但我对objective-c相当新,似乎无法找到解决方案.

任何帮助深表感谢.

string double objective-c coordinates

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