Javascript 将data-attribute的值分配给单独的html元素

Javascript 将data-attribute的值分配给单独的html元素,javascript,html,jquery,Javascript,Html,Jquery,我一直在尝试使用HTML、CSS和jQuery构建一个弹出菜单。很明显,我不想为每个菜单项复制代码块,我使用data-*属性来实现这一点。 我的相关代码是: $.source\u下拉按钮\u.clickfunction{ var src_content=$this.datacontent; $src_content.style.display=block; }; 资料来源:国内 这是因为$src_content是一个jQuery对象,它不会像JS对HtmleElement那样公开.style属

我一直在尝试使用HTML、CSS和jQuery构建一个弹出菜单。很明显,我不想为每个菜单项复制代码块,我使用data-*属性来实现这一点。 我的相关代码是:

$.source\u下拉按钮\u.clickfunction{ var src_content=$this.datacontent; $src_content.style.display=block; }; 资料来源:国内

这是因为$src_content是一个jQuery对象,它不会像JS对HtmleElement那样公开.style属性

使用jQuery的.css方法:

$(src_content).css({display: "block"});
或者在使用JS的.style之前,先使用[0]或jQuery的.get0提取元素

也始终使用type=按钮来进行。否则有一天你会开始提交表格

更好的建议是只通过CSS样式表处理样式, 并使用JS的Element.classList.toggle或jQuery的$.toggleClass切换该特定类:

$[数据内容].onclick,函数{ $this.dataset.content.toggleClassis-hidden; }; /*布尔助手*/ .是隐藏的{ 显示:无; } 资料来源:国内

这是因为$src_content是一个jQuery对象,它不会像JS对HtmleElement那样公开.style属性

使用jQuery的.css方法:

$(src_content).css({display: "block"});
或者在使用JS的.style之前,先使用[0]或jQuery的.get0提取元素

也始终使用type=按钮来进行。否则有一天你会开始提交表格

更好的建议是只通过CSS样式表处理样式, 并使用JS的Element.classList.toggle或jQuery的$.toggleClass切换该特定类:

$[数据内容].onclick,函数{ $this.dataset.content.toggleClassis-hidden; }; /*布尔助手*/ .是隐藏的{ 显示:无; } 资料来源:国内