小编MrU*_*own的帖子

jQuery按数据属性值查找元素

我有几个元素如下:

<a class="slide-link" href="#" data-slide="0">1</a>
<a class="slide-link" href="#" data-slide="1">2</a>
<a class="slide-link" href="#" data-slide="2">3</a>
Run Code Online (Sandbox Code Playgroud)

如何将类添加到data-slide属性值为0(零)的元素?

我尝试了很多不同的解决方案但没有任何效果 一个例子:

$('.slide-link').find('[data-slide="0"]').addClass('active');
Run Code Online (Sandbox Code Playgroud)

任何的想法?

jquery

90
推荐指数
3
解决办法
23万
查看次数

jQuery:获取数据属性

在我的HTML中,我有一个span元素:

<span class="field" data-fullText="This is a span element">This is a</span>
Run Code Online (Sandbox Code Playgroud)

我想获得data-fullText属性.我尝试了这两种方式,但它们没有用(两者都返回undefined):

$('.field').hover(function () {
    console.log('using prop(): ' + $(this).prop('data-fullText'));
    console.log('using data(): ' + $(this).data('fullText'));
});
Run Code Online (Sandbox Code Playgroud)

然后我搜索并发现了以下问题:如何获取data-id属性?jquery无法获取数据属性值.
这两个人的答案都是"Use .attr('data-sth') or .data('sth')".
我知道这.attr()已被弃用(在我使用的jquery-1.11.0中),但是,我试过了.
它工作了!

有人可以解释原因吗?

html javascript jquery custom-data-attribute

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

使用Google Maps API查找最近的位置

嗨,我正在写一个应用程序,显示一个地址附近的自行车站.我有一个服务的每个自行车站的纬度和经度位置列表.

到目前为止,我可以标记当前位置或任何地址.如何在地图上显示我所在位置附近的所有自行车站.我是否首先从当前位置获取最近的Google地点,然后访问数据库以获取自行车位置并在地图上制作标记?什么是最好的方法?

google-maps-api-3 android-maps

20
推荐指数
4
解决办法
5万
查看次数

Google Maps API v3 SVG标记消失

我正在使用SVG路径表示法使用Google Maps API v3创建标记以及折线.有时,添加几个标记后,它们就会停止显示在地图上.如果我平移地图,即使只是1px,它们会再次显示.

添加几个后,SVG标记停止显示 添加几个后,SVG标记停止显示

平移后SVG标记再次显示 平移后SVG标记再次显示

这种情况发生在FF,Safari,Chrome和iPhone浏览器中.

这是我的折线代码:

var lineSymbol = {
    path: g.SymbolPath.FORWARD_OPEN_ARROW,
    scale:1.5
};

polyOptions = {
    strokeColor: '#0026b3',
    strokeOpacity: 1.0,
    strokeWeight: 1,
    geodesic: true,
    icons: [{
        icon: lineSymbol,
        repeat: '100px'
    }],
    zIndex: 10
};

polyLine = new g.Polyline(polyOptions);
polyLine.setMap(map);
Run Code Online (Sandbox Code Playgroud)

以及SVG标记的代码:

var path = polyLine.getPath();
path.push(event.latLng);

var icon = {

    path: "M68.501,23.781 43.752,48.529 66.918,71.695 66.918,120.362 70.085,120.362 70.085,71.694 93.249,48.529",
    fillColor: iconColor,
    fillOpacity: .8,
    anchor: new g.Point(70.085, 120.362),
    strokeWeight: 0,
    scale:.4
};

var marker = new g.Marker({
    position: event.latLng,
    map: …
Run Code Online (Sandbox Code Playgroud)

svg google-maps-api-3 google-maps-markers google-polyline

19
推荐指数
2
解决办法
7236
查看次数

解码Google Maps嵌入参数

上下文

我希望能够提取嵌入在网站中的Google地图的位置(本网站底部的随机示例).

<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3128.340699934565!2d-0.46482818466529047!3d38.3642391796565!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0xd62377123a70817%3A0x85e89b65fcf7c648!2sCalle+Cruz+de+Piedra%2C+4%2C+03015+Alicante!5e0!3m2!1ses!2ses!4v1476192292052" width="100%" height="350" frameborder="0" style="border:0" allowfullscreen=""></iframe>
Run Code Online (Sandbox Code Playgroud)

所以,基本上我想从地图URL中提取精确位置:

https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3128.340699934565!2d-0.46482818466529047!3d38.3642391796565!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0xd62377123a70817%3A0x85e89b65fcf7c648!2sCalle+Cruz+de+Piedra%2C+4%2C+03015+Alicante!5e0!3m2!1ses!2ses!4v1476192292052
Run Code Online (Sandbox Code Playgroud)

网址设计

谷歌似乎在这里使用专有的参数设计.此博客文章此Stackoverflow文章总结了如何理解这些参数.参数的结构类似于(![id][type][value]),类型如下:

m: matrix
f: float
d: double
i: integer
b: boolean
e: enum (as integer)
s: string
u: unsigned int
Run Code Online (Sandbox Code Playgroud)

矩阵可以封装多个数据条目,例如,!1m3!1i2!1i4!1i17意味着ID为1的矩阵包含三个整数值[2, 4, 17].

有了这些知识,参数的结构可以这样:

!1m18
  !1m12
    !1m3
      !1d3128.340699934565
      !2d-0.46482818466529047
      !3d38.3642391796565
    !2m3
      !1f0
      !2f0
      !3f0
    !3m2
      !1i1024
      !2i768
      !4f13.1
  !3m3
    !1m2
      !1s0xd62377123a70817:0x85e89b65fcf7c648
      !2sCalle Cruz de Piedra, 4, 03015 Alicante
  !5e0
!3m2
  !1ses
  !2ses
!4v1476192292052
Run Code Online (Sandbox Code Playgroud)

现在看起来很简单,我们几乎以明文形式看到坐标.但正如博客文章指出的那样,参数 …

iframe google-maps geolocation geospatial google-maps-api-3

18
推荐指数
3
解决办法
4279
查看次数

创建叠加ImageView动画谷歌地图

我正在尝试使我的叠加图像执行以下操作:

  • onMap/onDrag的地图,在地图中间显示一个恒定的图像,这是一个图钉
  • onTouchUp,将标记图像更改为加载标记,一旦数据加载完成,将图像加载到带有文本的新图像.

这是一个非常类似于我的问题的解决方案:

animatedMarker

到目前为止我做了什么?

  • 在我的谷歌地图中间放置了一个图像视图,并获得了使用mMap.getCameraPosition().target 该图像的图像,使用它可以得到大约中间位置坐标 setOnCameraChanged,我知道已经弃用了,还有更好的解决方案吗?
  • 剩下的部分我无法弄清楚,虽然我已经阅读了几个SO问题,声称他们已经实现了将framelayout包装在谷歌地图的片段上,并在其上应用onTouch,但也无法找到对它的正确答案.

所有这一切发生的我的xml片段如下所示:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".fragments.MovableMapFragment">

    <fragment
        android:id="@+id/map_frag_fmm"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/tablayout_global_tabs"
        android:layout_alignParentTop="true" />
<! -- long xml ahead -->
Run Code Online (Sandbox Code Playgroud)

有人知道如何实现这种行为吗?

android google-maps imageview android-animation google-maps-android-api-2

15
推荐指数
2
解决办法
1288
查看次数

运行地图活动时应用程序崩溃

我的项目Map活动无法正常工作
我只是将api密钥粘贴到位google_maps_api.xml 并单击运行

logcat的:

E/AndroidRuntime:FATAL EXCEPTION:Thread-5进程:com.example.appmy.lofind,PID:10901 java.lang.NoClassDefFoundError:解析失败:Lorg/apache/http/ProtocolVersion; 在el.b(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):3)在ek.a(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48 (040700-196123505):4)在em.a(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):51)com.google.maps.api.android.lib6. drd.ap.a(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):11)at dw.a(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8. 48(040700-196123505):16)在dw.run(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):61)引起:java.lang.ClassNotFoundException:没有在路径上找到类"org.apache.http.ProtocolVersion":DexPathList [[zip文件"/system/priv-app/PrebuiltGmsCore/app_chimera/m/MapsDynamite.apk"],nativeLibraryDirectories=[/data/user_de/0/com .google.android.gms/app_chimera/m/00000006/MapsDynamite.apk!/ lib/x86,/ system/lib]]在dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:126)at java.lang.ClassLoader.loadClass(ClassLoader.java:379)at ad.loadClass(:com.google.android.gms.dynamite_dynamiteloader @ 12848026 @ 12.8.48(040700-196123505):25)at java.lang.ClassLoader .loadClass(ClassLoader.java:312)位于el.b(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):3)at ek.a(:com.google.android. gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):4)在com.google上的em.a(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):51) .maps.api.android.lib6.drd.ap.a(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):11)at dw.a(:com.google.android .gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):16)at dw.run(:com.google.android.gms.dynamite_mapsdynamite @ 12848026 @ 12.8.48(040700-196123505):61)E/SchedPolicy :set_timerslack_ns写入失败:不允许操作

performance android kotlin

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

API可以从Google获取所有评论和评级

我使用Google Maps API获取公司的评论和评分.

第1步:HTTP请求获取引用ID.

$url = 'https://maps.googleapis.com/maps/api/place/textsearch/json?query='.<CompanyName>.'&sensor=true&key='.<apikey>;
Run Code Online (Sandbox Code Playgroud)

在HTTP请求之后,我得到了业务的referenceId.

第2步:HTTP请求获取评论.

$url = 'https://maps.googleapis.com/maps/api/place/details/json?reference='.<referenceId>.'&key='.<apiKey>
Run Code Online (Sandbox Code Playgroud)

有了上述内容,我得到了"最有帮助的评论"和最多5条评论.

所以我希望获得所有评论或最新评论.我需要添加参数吗?

php google-maps google-maps-api-3

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

Google Maps API v3 - Geocoder结果问题

目标:我希望拥有自定义搜索(地理编码)功能,并能够列出并单击每个结果并将其显示在地图上.

通缉:相应地调整地图边界/缩放级别,即搜索"MA,USA"应该缩放地图以让我看到整个马萨诸塞州,而搜索"波士顿,马萨诸塞州,美国"应该放大波士顿地区.列出多个结果时,单击结果时应该同样适用.

问题:我可以使用带有fitBounds的geometry.bounds对象 - 但是 - 使用地理编码器获得的一些结果没有该geometry.bounds对象.

一个简单的例子:搜索"波士顿"回归

波士顿,美国
马萨诸塞州,美国波士顿,IN,美国
波士顿,肯塔基州,美国
波士顿,GA 31626,美国
波士顿,塞勒姆,VA 22713,美国
波士顿,NY 14025,美国

"Boston,KY"和"Boston NY 14025"都没有界限.

问题:是否有可靠的方法在适当的缩放级别上在地图上显示任何地理编码器结果?

现在我正在使用类似的东西,但我觉得这很丑,并没有解决缩放问题

if (results[0].geometry.bounds) {

    map.fitBounds(results[0].geometry.bounds);

} else {

    map.setCenter(results[0].geometry.location);
    // eventually set zoom here to some middle-range value (ugly)
}
Run Code Online (Sandbox Code Playgroud)

javascript google-maps google-maps-api-3 google-geocoder fitbounds

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

Google Maps API - 为什么标签没有标记动画?

我创建了一个谷歌地图并添加了一些标记.每个标记具有单字母标签("A","B","C").然后我为每个标记设置动画以进行反弹.

这一切都很好用一个令人讨厌的例外:标签("A","B","C")不会与标记一起反弹,所以看起来很奇怪.

JS/jQuery如下.我这里还有一个代码笔来显示问题.

有关如何使标签与标记一起弹跳的任何建议?

$(function () {

    var map;
    var labels = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    var labelIndex = 0;
    var markers = [];
    // Map locations
    var mapLocations = [{
        "name": "Windwood Hollow Park",
            "description": "This is the description for location 1",
            "position": {
            "lat": 33.942253,
            "lng": -84.278242
        }
    }, {
        "name": "Peeler Road Linear Park",
            "description": "This is the description for location 2",
            "position": {
            "lat": 33.940143,
            "lng": -84.278394
        }
    }, {
        "name": "Winters Chapel Animal Hospital",
            "description": "This …
Run Code Online (Sandbox Code Playgroud)

javascript jquery google-maps google-maps-api-3

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