以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- openPopup问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=192750)
|
-- 作者:ycs5801
-- 发布时间:2024/7/18 15:39:00
-- openPopup问题
函数中的st8元素:tab.AddPage("st8", "日历", "renamecxtq.htm?type=tuanke&riqi=" & riqi(7), "./images/日历.png")
js中绑定元素:function click88(){ document.getElementById(\'st8\').onclick = function() { console.log("pop") openPopup(\'pop01\'); }; }
点击st8元素时,无法触发相关函数呢?
|
-- 作者:有点蓝
-- 发布时间:2024/7/18 16:07:00
--
到浏览器里调试
|
-- 作者:ycs5801
-- 发布时间:2024/7/18 16:17:00
--
此主题相关图片如下:qq截图20240321110631.png
是啥原因?是不是这么调试?
|
-- 作者:有点蓝
-- 发布时间:2024/7/18 16:23:00
--
没看到有onclick,说明根本没有绑定事件,click88函数没有被调用过
|
-- 作者:ycs5801
-- 发布时间:2024/7/18 16:29:00
--
function click88(){ console.log("pop"); document.getElementById(\'st8\').onclick = function() { console.log("pop1"); openPopup(\'pop01\'); }; } 刷新页面后,控制台已经显示“pop”了,说明已经调用了,但是为啥没绑定上呢?
|
-- 作者:有点蓝
-- 发布时间:2024/7/18 16:38:00
--
要么控件id不正确,或者id重复了。要么js执行的时候,页面内容还没有生成
|
-- 作者:ycs5801
-- 发布时间:2024/7/18 18:48:00
--
js中改成添加这个: window.onload = function() { console.log("pop"); document.getElementById(\'st8\').onclick = function() { console.log("pop11"); openPopup(\'pop01\'); }; };
还是没反应
|
-- 作者:ycs5801
-- 发布时间:2024/7/18 19:13:00
--
在js中改成这样可以了: document.addEventListener(\'DOMContentLoaded\', function() { console.log("666");
var st8 = document.getElementById(\'st8\'); if (st8) { st8.addEventListener(\'click\', function() { console.log("pop11"); openPopup(\'pop01\'); }); } else { console.error("Element with ID \'st8\' not found."); } });
|