// js loop load dom for (var k in data) { var v = data[k]; detailTemplate = detailTemplate.cloneNode(true); var userInfoObj = detailTemplate.getElementsByClassName('user-info')[0]; userInfoObj.getElementsByClassName('name')[0].innerText = v.author; userInfoObj.getElementsByClassName('avatar')[0].src = v.avatar; userInfoObj.getElementsByClassName('post-time')[0].innerHTML = v.lastpost; var titleObj = detailTemplate.getElementsByClassName('title')[0]; titleObj.innerText = v.subject; var commentHtml = ''; if (v.postlist.length > 0) { for (var j in v.postlist) { var vv = v.postlist[j]; commentHtml += '<div class="line"><i class="icon icon-quote"></i><span class="desc">' + vv.message + '</span></div>'; } } var commentObj = detailTemplate.getElementsByClassName('comment')[0]; commentObj.innerHTML = commentHtml; var extInfoObj = detailTemplate.getElementsByClassName('ext-info')[0]; extInfoObj.getElementsByClassName('from')[0].innerText = v.fname; extInfoObj.getElementsByClassName('view-time')[0].innerText = v.views; // 动态绑定click事件并传参 (function(v) { userInfoObj.onclick = function() { loadPage('u', v.authorid); }; titleObj.onclick = commentObj.onclick = function() { loadPage('t', v.tid); }; extInfoObj.onclick = function() { loadPage('f', v.fid); }; })(v); postListObj.appendChild(detailTemplate); }
相关推荐
web前端的朋友们,经常会遇到给由后台返回的数据遍历生成的DOM绑定事件,但是总是绑定不上,那是因为把事件直接绑定到了动态生成的DOM上了,正确的方式是利用事件冒泡给其父元素绑定,这样才能解决问题的哦!
标题中提到的关键概念包括JavaScript闭包、传参以及事件循环绑定。这三个概念在JavaScript编程中非常关键,它们的使用方法和特性对于构建Web应用的交互行为有着直接的影响。 在描述中提到循环绑定事件的问题,通常...
在前端开发中,动态绑定事件是一项非常重要的技术,尤其是在处理动态创建的DOM元素时。本文将介绍使用layui框架来实现动态绑定事件的方法,并探讨其中的关键技术点。 首先,我们需要了解动态创建DOM元素后,原有的...
JavaScript 为 DOM 绑定事件是指在网页中将事件处理程序绑定到 HTML 元素上的过程,而为了实现跨浏览器兼容性,我们需要了解不同的浏览器对绑定事件的实现方式。 直接为 Element 对象绑定事件 直接为 Element 对象...
HTML5 DOM(Document Object Model)是一种编程接口,允许程序和脚本动态更新、添加、删除以及改变HTML和XML文档的结构。在Delphi中,通过TWebBrowser控件,开发者可以与HTML5 DOM进行交互,实现诸如加载HTML文档、...
因此,当通过JavaScript代码动态添加新的DOM元素到页面中时,原先绑定的事件并不会应用到这些新元素上,导致事件失效。 解决动态生成DOM元素事件失效的方法有几种: 1. 直接在动态生成DOM元素的地方重新绑定事件。...
用jquery的时候你会发现,页面渲染后动态生成的dom,在生成之前的代码是没办法取到相应对象的,必须重新获取.但是vue基于数据绑定的特性让它能生成的时候直接绑定数据。 html: <input type=text v-model...
js for循环中实现进度条 & 快速解决js动态改变dom元素属性后页面及时渲染的问题
在Web开发中,经常需要动态地向页面添加DOM元素,并为这些元素绑定事件处理器。本文将介绍如何在JavaScript中为动态添加的`div`元素绑定`onclick`事件处理器。 #### 基础的事件绑定方法 最基础的方式是直接在HTML...
在本主题"js表格操作,DOM实现数据动态增删查改"中,我们将深入探讨如何使用原生JavaScript通过DOM操作来实现数据在表格中的动态管理。 1. **创建表格**:首先,我们需要在HTML中创建一个基础的表格结构。这通常...
标题“spreadjs_动态添加表头及数据绑定-demo.zip”所指的,是使用SpreadJS库创建的一个示例,该示例演示了如何在JavaScript环境中动态地添加表格表头并实现数据绑定。SpreadJS是一款强大的JavaScript电子表格组件,...
关于JavaScript中的onclick事件传参,首先需要理解onclick事件的基本概念。在HTML中,onclick事件是元素的一种事件监听器,当用户点击该元素时,会触发一个定义好的JavaScript函数。这是实现用户交互的一种常见方法...
本文实例讲述了JS实现同一DOM元素上onClick事件与onDblClick事件并存的解决方法。分享给大家供大家参考,具体如下: 最近项目中遇到了在同一DOM元素上需要添加 onclick 和 ondblclick 2个事件,如果按照正常的方式...
然而,在某些场景下,比如根据用户的操作动态生成DOM节点或更改DOM结构时,就需要使用JavaScript动态地为元素添加事件监听器。这种方式更加灵活且易于管理。 #### 二、基本概念与原理 ##### 1. 动态添加事件的方式...
- Vue不推荐直接使用原生的`addEventListener`或`onclick`属性来为动态生成的元素添加事件监听器,因为这样做会绕过Vue的事件机制,导致事件监听器不会自动绑定到Vue实例上。 - 另一个需要注意的地方是,不能直接...
【JS + HTML DOM】是关于JavaScript与HTML Document Object Model(文档对象模型)的结合使用,这一主题涵盖了如何通过JavaScript操作和动态更新HTML页面。在Web开发中,JavaScript是一种客户端脚本语言,它允许我们...
JS 动态添加删除 HTML 元素实例 动态添加删除 HTML 元素是前端开发中常见的需求之一,今天我们来探讨如何使用 JavaScript 实现动态添加删除 HTML 元素的实例。 首先,让我们了解一下 HTML 文档对象模型(DOM),它...