鱼C论坛

 找回密码
 立即注册
查看: 1896|回复: 1

关于js中document.createElement方法的问题

[复制链接]
发表于 2022-7-18 19:26:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
刚学前端不久,以为自己懂了,实际动手才发现好像啥都不会OTZ,在网上找了一些项目来学习,发现其中有一种写法让我不太能理解,在jsp页面引用的js里直接这样写:document.createElement('<div id='ID' style='一长串样式;'+var+'></div>'),有点记不太清楚了,大致是这样的,IE运行正常,但其他浏览器F12报错这样写是invalid的,我想试着改成var div =document.createElement("div"),然后用div.id="xxx"这种形式来添加其他属性,又不知道该怎么处理原来写法中的那个var,我在项目里找了半天都没找到这个var,想请问下有没有大佬知道这个写法到底是什么意思啊,那个var到底是哪儿来的……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-16 20:11:54 | 显示全部楼层
这个写法是使用了document.createElement方法来动态创建一个HTML元素,并且在元素创建时设置了一些样式和属性。其中var是一个变量,可能是在其他地方定义的,用于设置元素的样式或属性

但是,这种写法在标准的HTML规范中是不被支持的,因为createElement方法只能用来创建一个元素节点,而不能在创建时传入HTML代码。因此,这种写法在其他浏览器上可能会出现错误或不兼容的情况

你提到的另一种写法,即先创建一个元素节点,然后再设置其属性和样式,是更加符合HTML规范的做法。你可以尝试将原来的写法改成这种方式,然后将之前的var变量的值设置为需要的样式或属性,再通过JavaScript代码来设置元素的属性和样式。例如:
var div = document.createElement('div');
div.id = 'ID';
div.style.cssText = '一长串样式;' + var;
在这个例子中,我们先通过document.createElement方法创建了一个div元素,然后通过设置id属性和style属性来设置元素的ID和样式。其中style.cssText属性可以用来设置元素的CSS样式

希望这能帮助你更好地理解这个问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 13:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表