MDL模态按钮适用于一张卡,但不适用于其他卡
MDL modal button works for one card but not other cards
这是用玉写的一页。它为事件(变量)的每个值生成卡片。目的是为每个卡创建一个模态,其中将用于显示事件信息。模态按钮适用于第一张卡片。但对其余的卡片不起作用。
.mdl-grid
each val in pdfs
.mdl-cell.mdl-cell--4-col.mdl-cell--4-offset
.demo-card-square.mdl-card.mdl-shadow--2dp
.mdl-card__title
h2.mdl-card__title-text #{val.title}
.mdl-card__supporting-text
| #{val.desc}
.mdl-card__actions.mdl-card--border
a.mdl-button.mdl-button--colored.mdl-js-button.mdl-js-ripple-effect(href="/uploads/"+'#{val.filename}',id='embedUrl' target="_blank")
| View Event
button.mdl-button.mdl-button--colored.mdl-js-button.mdl-js-ripple-effect.mdl-button.show-modal(type='button')
| Review
// Icon button
a.mdl-button.mdl-js-button.mdl-button--icon.mdl-button-color--red
i.material-icons close
dialog.Viewabstractmodal.mdl-dialog
.mdl-dialog__content
.mdl-dialog__actions.mdl-dialog__actions
button.mdl-button.close.mdl-button--colored(type='button') Submit
script.
var dialog = document.querySelector('dialog');
var showModalButton = document.querySelector('.show-modal');
if (! dialog.showModal) {
dialogPolyfill.registerDialog(dialog);
}
showModalButton.addEventListener('click', function() {
dialog.showModal();
});
dialog.querySelector('.close').addEventListener('click', function() {
dialog.close();
});
您需要为每个对话框分配事件侦听器,而不仅仅是第一个。
// get ALL of the dialogs
var dialogs = document.querySelectorAll('.dialog');
// iterate and add listeners to each dialog
dialogs.forEach(function(dialog){
// ... polyfill
// use querySelector method of dialog, not the whole document
var showModalButton = dialog.querySelector('.show-modal');
showModalButton.addEventListener('click', function() {
dialog.showModal();
});
dialog.querySelector('.close').addEventListener('click', function() {
dialog.close();
});
})
相关文章:
- AddEventListener适用于浏览器,但不适用于Android
- 在Firefox中使用锤子捏 错误地定向 - 适用于所有其他浏览器
- AngularJS:必需属性适用于某些字段,但不适用于其他字段
- JavaScript不显示剩余字符,但适用于其他页面
- Chrome壁纸API适用于某些图像,不适用于其他图像,没有明显的原因
- jQuery事件在Mozilla上不起作用,并且适用于其他浏览器
- 简单代码仅适用于某些编辑器,而不适用于其他任何地方
- javascript:表单不仅被IE取代,而且,它适用于所有其他浏览器
- 在backbonejs视图中,keypress/keyup/keydown事件是否仅适用于输入,而不适用于其他元素
- 滚动后删除锚链接-也适用于其他页面的链接
- jQuery.load不适用于IE(适用于所有其他浏览器)
- 点击关闭Div不适用于Chrome,但适用于所有其他浏览器
- 为什么这个正则表达式替换不适用于JavaScript,而只适用于其他引擎
- IE抛出JavaScript错误(适用于其他浏览器)
- IE无法加载JSON并尝试下载根文件!(我正在遵循一个适用于所有其他浏览器的教程)
- MDL模态按钮适用于一张卡,但不适用于其他卡
- 如何调整空格键和回车只适用于第三个按钮,不适用于任何其他按钮
- 革命滑块是完全灰色的,不工作.但也适用于其他主题
- 简单展开(JQuery)不适用于InternetExplorer11,但适用于其他浏览器
- 通过XMLHttpRequest上载文件不适用于Microsoft Edge,但适用于其他应用程序