javascript - 如何将 index.html 中的内容放入 view.html 中?

标签 javascript html css angularjs angularjs-directive

我有这样的东西plunker .我希望我的 View 被传递到指令中的 mapId 填充。然后我想显示该 View 以代替“这是一些内容”。

首先如何将 mapId 传递到 View 中,其次如何在灯箱 div 中显示该 View ?

我知道这有点含糊,但我是 Angular 的新手,所以我不知道这里还需要什么其他信息。

最佳答案

您将无法将 view.html 文件与当前的灯箱代码一起使用。它需要大量修改才能使用 template files and isolate scopes .但是,您可以使用当前代码来实现相同的目的,也许只需添加一个 Controller 来修改范围。

我修改了 plunker 中的 index.html以便它显示 mapId值(value)。

让我们回顾一下 angular-lightbox 实际上在做什么:

通过只返回一个函数,该指令将完成整个编译过程,然后使用返回的函数作为链接器。然后链接器继续(取决于选项)向 DOM 添加覆盖(灯箱的不透明深色背景),然后将灯箱事件类添加到 div#lightbox .这div已经在 DOM 中,但由于 CSS 而隐藏,并且已经由 AngularJS 编译和呈现,因此除了通过相同或子范围级别的双向数据绑定(bind)之外,它无法真正更改。

我的更改做了什么:

我向 div#lightbox 添加了一个绑定(bind)范围变量称为 mapId并添加了一个 ng-click到设置 mapId 值的按钮到 1、2 或 3。因此,当您单击按钮时,div#lightbox被揭示&的新值(value)的值(value)mapId显示。

鉴于以上可能不是你想要完成的...

让我们谈谈如何去做

首先您需要加载 view.html以某种方式进入指令。要么只拥有 view.html内容是指令内的字符串或使用 $templateCache .

然后您需要 $compile来自 view.html 的 HTML ,传入一个新范围,其中包含您想要的值 options , 然后将其附加到 div#lightbox .

关于javascript - 如何将 index.html 中的内容放入 view.html 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21803389/

相关文章:

css - 想要在谷歌地图中有一个 float 窗口。像这样的 : Is there a name for this object?(包含链接/图像。)

javascript - 我如何编写一个 javascript 函数,每五秒在字符串末尾添加一个句点?

javascript - 无法访问变量

javascript - 如何从javascript函数获取TikTok个人资料图片?

jquery - 页面向下滚动时更改 .active 的导航栏链接

javascript - 显示和隐藏div

css - IE7 float 列表元素格式问题

javascript - 使 Javascript 正则表达式不区分大小写

python - 重定向不起作用,每次都必须刷新页面

html - 如何对齐 <td rowspan ="value"> 值垂直居中?