带有点击处理程序和滚动条的 Google 地图信息框

2024-01-23

我有一个使用 Google Maps javascript API 和 Infobox 插件(本机 InfoWindow 的可自定义版本)的应用程序。

它工作得很好,直到我出现以下用例: 如果内容很大,我需要一个带有滚动条的信息框,并且它还需要包含几个带有点击侦听器的 HTML 元素。

为了支持信息框中的点击处理程序,我通常需要做的是设置enableEventPropagation = true,并使用jQuery委托来设置点击处理程序。如果我不允许事件传播,jQuery 委托将不起作用。

这工作得很好,直到我不得不将它与功能滚动条结合起来!我发现滚动条仅在启用事件传播= false 时才起作用,因为如果启用事件传播,则拖动事件只会传递到地图并解释为平移。

有谁知道我可以做些什么来在信息框内容上拥有一个功能滚动条,并能够在某些内容上设置点击处理程序?

对我来说,enableEventPropagation=false 可以解决这两个问题,这听起来合乎逻辑,因为我不明白为什么需要将单击事件传播到地图才能触发我附加到 html 元素的处理程序。

这是我的信息框的设置对象:

{
        content: "[my html in here]",
        disableAutoPan: false,
        pixelOffset: new google.maps.Size(-77, 10),
        boxClass: "infoBox",
        infoBoxClearance: new google.maps.Size(18, 30),
        closeBoxMargin: "14px 6px",
        pane: "floatPane",
        enableEventPropagation: true
};

以防万一您仍在处理此问题,您需要更改地图选项以在鼠标进入信息框时关闭平移/缩放。你可以使用这样的东西:

$(document).delegate("div#ib", "mouseenter", function() {

    theMap.setOptions({
       draggable: false,
       scrollwheel: false
    });
    console.log("mouse enter detected");

});

$(document).delegate("div#ib", "mouseleave", function() {
    theMap.setOptions({
        draggable: true,
        scrollwheel: true
    });
    console.log("mouseleave detected");
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有点击处理程序和滚动条的 Google 地图信息框 的相关文章

  • 点击加载谷歌地图

    我想在单击链接后显示 Google 地图 我已经尝试过以下方法 当点击链接时 然后 Insert div与 id 链接后map 使用 jQuery 方法 getScript 加载 Google Maps API 添加谷歌地图到div带身份证
  • Instagram 粉丝计数 - 使用 jQuery / json 和 PHP

    经过几个小时的工作和一些帮助萨希尔 米塔尔我们已经成功使用 jQuery json 和 PHP 检索 Instagram 关注者计数 这是我们设法整理的内容 希望对其他想要获取 Instagram 信息的人有所帮助 我们的 jQuery I
  • 自动建议 php 的 ajax

    我有一个 html 表单 php 脚本和 jquery 我需要一个 ajax 代码来从我的 php 脚本中进行自动建议 以下是代码 表单 html
  • 从 HTTP 登录到 HTTPS

    我的网站默认使用 HTTP 我确实有一个启用 HTTPS 的证书 但只有其上的某些区域强制建立安全连接 登录是通过 Ajax 处理的 我想开始使用 SSL 即使请求来自 HTTP 我尝试强制请求的地址具有 HTTPS 并且它完美地回复 然而
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • 滚动顶部不符合预期

    Note 由于上次忘记奖励而重新开放赏金 A Woff 大师已经给出答案 我想在用户展开某一行时到达该行 这样当最后一个可见行展开时 用户不必向下滚动即可查看内容 I used example tbody on click td green
  • 将数组从 jquery ajax 传递到代码后面

    我必须将二维数组传递给在asp net网页代码后面编写的页面方法我有一个变量objList作为二维数组 我使用以下代码来实现此目的 但没有成功 并且未调用页面方法 脚本语言 function BindTable objList ajax u
  • jQuery 生成 div 和碰撞检测

    所以我的学校作业项目快要结束了 我只是错过了两件我似乎无法弄清楚的主要事情 1 如何生成具有随机位置的间隙的管道障碍物 以便鸟可以飞过 尝试使用一个函数来更改间隙位置的管道 div 的 css right attr 并在以下情况下移除管道它
  • 当用户在引导日期选择器中更改月份时动态更新选项

    我在用着引导日期选择器 https github com uxsolutions bootstrap datepicker我也附加了一个监听器changeMonth https bootstrap datepicker readthedoc
  • JQuery - 通过 $.each 循环查找表中的文本框值

    我有一个 HTML 表格 这个 HTML 表格的第一行是静态的 当他们单击一个 按钮时 意味着 行将动态添加 用户想要删除一行意味着 他单击一个 按钮意味着当前行被删除 每行有 4 个文本框 我的 Jquery 代码如下 var First
  • 更改 yii 中注册脚本文件的顺序

    我正在为 Yii 应用程序制作一个小部件 主布局视图注册了所有常见的脚本文件 例如 jQuery 和 jQueryUI 在我的小部件中 我想使用依赖于已加载的 jQueryUI 的 jQueryUI 插件 我知道我可以指定脚本包含在页面上的
  • 选择所有选项值而不是第一个

    我有一个正在运行的脚本 可以根据所选的下拉选项显示 隐藏 div 在用户在下拉列表中进行选择之前 我需要隐藏除第一个 div 之外的所有 div 根据下面的脚本 如何从除第一个选项之外的所有选项中获取值 以便隐藏除第一个 div 之外的所有
  • html 选择列表 - 通过传入变量获取文本值?

    我有一个显示列表语言的选择列表
  • jquery星级评分插件和jquery点击功能

    我正在使用 jquery 星级评分插件 http www fyneworks com jquery star rating http www fyneworks com jquery star rating 我可能会得到一些像这样的html
  • Ajax 表单从 Jquery 对话框内重定向页面

    我在部分视图中有一个 jquery 对话框 model JQueryDialogPoc Models FeedBack using Ajax BeginForm GiveFeedback Home null new AjaxOptions
  • Bootstrap按钮加载+Ajax

    我正在使用 Twitter Bootstrap 的按钮加载状态 http twitter github com bootstrap javascript html buttons http twitter github com bootst
  • Firefox 不会在使用 jQuery AJAX 加载的内容上呈现 CSS 样式

    我有一个网站 允许用户对书籍和文章发表评论 主表单有一个搜索输入 用于查找相关书籍或文章 来源 我使用 jQuery 根据输入的搜索词从外部站点动态加载新源 然后还使用 AJAX 返回列表中的源 我有两个问题 现在 在用户输入四个字符后 j
  • 检查 jQuery 1.7 中是否存在基于文本的选择选项

    所以我有以下 HTML 片段
  • Chrome//kendoUI/jQuery:超出最大调用堆栈大小

    我正在使用 hottowell 模板来创建 spa 应用程序 并且我从 jquery 中收到了一个很好的错误 基本上我的问题从此刻开始尝试绑定我的视图 viewModelBinder js 来自 durandal 库 viewModelBi
  • 在 JavaScript 循环之外声明变量可以提高速度和内存?

    C 也有类似的问题 但我们没有看到 JavaScript 的任何问题 在循环内声明变量是否可以接受 假设循环有 200 次迭代 使用样本 2 相对于样本 1 是否有性能要求 内存和速度 我们使用 jQuery 来循环 它提高了我们将 var

随机推荐

  • 铸造明确布局的结构

    假设我有这个结构 StructLayout LayoutKind Explicit public struct Chapter4Time FieldOffset 0 public UInt16 Unused FieldOffset 2 pu
  • 主题分布:在python中进行LDA后如何查看哪个文档属于哪个主题

    我能够运行 gensim 中的 LDA 代码 并获得前 10 个主题及其各自的关键字 现在 我想进一步了解 LDA 算法的准确性 方法是查看它们将哪些文档聚类到每个主题中 这在 gensim LDA 中可能吗 基本上我想做这样的事情 但是在
  • 有没有办法仅使用 CSS 将元素的索引(子编号)作为文本插入到元素中?

    我的目标是逐行打印文本文件并在开头附加行号 就像这样 div div class line 1 asdf div div class line 2 asdfasdf div div class line 3 asdfasdfasdfasdf
  • 是否可以在 C 语言中添加类型推断?

    比方说 我们创建了 C 的重新实现 唯一的区别是 类型是推断出来的 存储类和修饰符仍然需要 给定 const static restrict 等 让我们将注意力限制在单个 暂时归档 C 程序 能做到吗 主要有哪些 障碍 关于可能导致类型推断
  • 为什么在 V8 中使用此代码片段 <= 比 < 慢?

    我正在阅读幻灯片使用 V8 突破 Javascript 速度限制 https v8 io12 appspot com 16 并且有一个类似下面代码的示例 我不明白为什么 lt 慢于 lt 在这种情况下 有人能解释一下吗 如有任何意见 我们将
  • Google Ads 链接器命令失败,退出代码为 1(使用 -v 查看调用)

    我最近从 iAd 切换到 Google Ads 它似乎在模拟器上运行良好 但每当我尝试在 iOS 设备上运行它时 我都会收到此错误 这有什么问题吗 我的项目发生了同样的错误 以下解决方案有效 请检查您的 xcode 项目中是否启用或禁用了位
  • 谷歌地图如何在最近的道路上强制标记

    我正在做一个车辆跟踪项目 我从数据库中获取坐标 并显示在谷歌地图上 这是我的代码 function get coordinates checkbox var v id checkbox id if checkbox checked var
  • 构建上下文无关语法

    如何为以下语言构建上下文无关语法 L a l b m c n d p l n m p l m n p gt 1 我首先尝试 S gt abcd aAbBcd abcCdD aAbcdD AabBcCd 进而A 其他东西 但我无法让它工作 我
  • 如何合并两个没有共同祖先的分支?

    我已经开始在项目中使用 Git 其中前两次提交只是一些初始设置 gitignore 和 gitattributes 第三次提交M2添加SVN trunk的内容 I1 I2 M2 N Z 我已将 SVN 历史记录导入名为svn where M
  • Sencha 命令上的 Cordova 和 PhoneGap 初始化失败

    我已经通过 NodeJS CLI 在 Ubuntu 13 10 上安装了 PhoneGap 并开始了本机构建过程 然而 在初始化期间 这是执行的命令和相应的输出 sencha phonegap init com foo barapp Bar
  • 使用 sed 将换行符转义 '\n' 替换为转义换行符转义 '\\n'

    我正在尝试替换字面术语 n 不是换行符 而是字面量 按字面量 n using sed 我试过这个 echo Refreshing n n n state prior sed s n n g 这 有效 但我需要它来输出文字字符 n 现在我最终
  • 在 Windows 上从命令行向 git commit -m 添加换行符

    我的公司有一项政策 即对特定项目的所有签入都必须遵循 git 提交的特定多行模板 如何最简单地从 Windows 命令行创建一条包含多行的提交消息 This is almost exactly a duplicate of Add line
  • 2个列表之间的共同元素比较

    给定两个输入列表 如何创建两个输入共有的元素列表 例如 对于输入 1 2 3 4 5 6 and 3 5 7 9 结果应该是 3 5 用于输入 this this n that and this not that that 结果应该是 th
  • XCode C++ 缺少精子()

    我正在使用 C 和 XCode 创建一个命令行应用程序来保存文件权限 但是我无法识别精子 方法 错误是 使用未声明的标识符 精子 我的包含内容和有问题的代码如下 My includes include
  • Android 4.3 上的 YouTube 嵌入式播放器

    我正在尝试将 YouTube 播放器嵌入到我的网页中 如下所示 我遇到的问题是 播放器最初加载并播放第一个视频正常 但是当调用 loadVideoById 时 播放器看起来要加载视频 视频标题文本更改 但随后卡在黑屏上而不是播放 自从我的手
  • 如何使用WinAPI隐藏控制台窗口?

    我试图隐藏控制台窗口当我的C使用这个简单的应用程序启动WinAPI code define CONSOLE NAME 6FD66E14 FF0F 4B94 B8AF AFE3D42DC399 void hide window void Se
  • 通过 cmake 从 C++ 扩展构建 Python 子模块

    我正在尝试通过 cmake 将 c 扩展作为子模块合并到现有的 python 库中 构建 C 扩展可以正常工作 并将其作为 python 模块导入也可以 但不能作为头库的子模块 我有以下目录结构 frontend foo py bar py
  • 如何从“git stash save --all”中恢复?

    我想隐藏未跟踪的文件 但我一直传递错误的选项 对我来说 这听起来是对的 git stash save a all 但这实际上也隐藏了被忽略的文件 正确的是 git stash save u include untracked 当我跑步时gi
  • Pandas-将值设置为空数据框

    我已经初始化了一个空的 pandas 数据框 现在正在尝试填充该数据框 但我一直遇到相同的错误 这是我正在使用的 简化的 代码 import pandas as pd cols list ABC df pd DataFrame column
  • 带有点击处理程序和滚动条的 Google 地图信息框

    我有一个使用 Google Maps javascript API 和 Infobox 插件 本机 InfoWindow 的可自定义版本 的应用程序 它工作得很好 直到我出现以下用例 如果内容很大 我需要一个带有滚动条的信息框 并且它还需要