//创建TR
function createTr(){
var nodeTr=document.createElement("tr");
var nodeTd=document.createElement("td");
var nodeText=createInput("filterkey","text","","ctext");
nodeTd.appendChild(nodeText);
nodeTr.appendChild(nodeTd);
nodeTd=document.createElement("td");
nodeText=createInput("filtervalue","text","","ctext");
nodeTd.appendChild(nodeText);
nodeTr.appendChild(nodeTd);
nodeTd=document.createElement("td");
nodeText=createInput("filterbutton","button","删除","cbutton");
nodeTd.appendChild(nodeText);
nodeTr.appendChild(nodeTd);
return nodeTr;
}
//创建Text/Button,js中不能使用保留关键字作为参数名称,例如name,value等
function createInput(propertyName,propertyType,propertyVal ue,propertyClass){
var element = '';
try{
element = document.createElement("<input type="&quot;+propertyType+&quot;" name="&quot;+propertyName+&quot;" value="&quot;+propertyValue+&quot;">");
}catch(e){
element = document.createElement("input");
element.setAttribute("type",propertyType);
element.setAttribute("name",propertyName);
element.setAttribute("value",propertyValue);
}
element.setAttribute("className",propertyClass);
element.setAttribute("class",propertyClass);
if(propertyType=="button"){
if (document.all)
element.attachEvent("onclick",deleteFilterRule);
else
element.addEventListener("click",deleteFilterRule,false);
}
return element;
}
//在指定元素之后添加
function appendAfter(nodeId){
var node=document.getElementById(nodeId);
var nn=createTr();
if(node.parentNode){
if(node.nextSibling){
node.parentNode.insertBefore(nn,node.nextSibling);
}else{
node.parentNode.appendChild(nn);
}
}
}
//删除元素
function deleteFilterRule(nodeId){
var jsFirstTr=document.getElementById("firstTr");
var nodeDelete=null;
var nodeParent=jsFirstTr.parentNode;
if(nodeId=='allRule'){
while(jsFirstTr.nextSibling){
nodeDelete=jsFirstTr.nextSibling;
nodeParent.removeChild(nodeDelete);
}
}else{
var event = arguments[0]||window.event;
var nodeDelete = event.srcElement || event.target;//event.srcElement---IE,event.target---FireFox
nodeDelete=nodeDelete.parentNode.parentNode;
nodeParent.removeChild(nodeDelete);
}
}
分享到:
相关推荐
JavaScript是一种广泛应用于Web开发的脚本语言,它在不同的浏览器中可能会有不同的行为和表现,尤其是在老版本的Internet Explorer(IE)和Firefox之间。这两个浏览器在处理JavaScript语法、DOM操作、CSS渲染等方面...
本文将基于提供的文档摘要,深入探讨Internet Explorer(IE)与Mozilla Firefox(火狐)这两种主流浏览器在处理DOM操作、事件绑定等方面存在的差异,并提出相应的解决方案。 #### 一、InnerText与InnerHTML - **...
这包括IE9+、Chrome、Firefox、Safari和Edge等。 8. **性能优化**:在处理大量数据时,需要注意性能优化。避免不必要的DOM操作,可以使用数组排序后一次性更新DOM,而不是每次排序一个元素。 9. **代码结构**:...
本篇文章将详细介绍如何利用jQuery实现这一功能,支持包括IE、Firefox、Safari、Chrome和Opera在内的主流浏览器。 首先,我们需要创建一个基本的HTML表格结构,如Code1所示,包含表头(thead)和数据区域(tbody)...
以上代码中,对于非Webkit浏览器(如IE和Edge),我们禁用了默认的滚动条,而在Webkit浏览器中,我们定义了滚动条的宽度、轨道和滑块的颜色。 对于更复杂的场景,例如树形组件下的滚动条,可能需要在组件内部实现...
在这种情况下,如何实现一个既高效又能良好展示上万条数据的表格,并且还要保证在IE和Firefox等浏览器中的兼容性,就显得尤为重要。 首先,我们需要理解“支持上万条数据的table实现”这一概念。这通常涉及到虚拟...
在IE中,特别是旧版本,可能不会严格遵循标准,而Firefox和Chrome更倾向于遵循W3C标准。例如,当使用表格布局时,`display:block`可能与表格元素的预期行为不符。在这种情况下,可以使用`display:table-cell`来确保...
总之,要处理IE和Firefox下`createElement`方法的差异,可以使用jQuery提供的跨浏览器功能,如`$`函数和事件绑定方法,来统一创建元素和添加事件监听器的方式。这样不仅可以简化代码,还能提高代码的可维护性和兼容...
本示例提供了一种兼容IE和Firefox浏览器,并遵循W3C标准的方法来实现这一功能,同时也支持左移和右移的操作。 首先,我们来看实现这种效果的基本思路: 1. 创建一个固定宽度且设置`overflow: hidden`的容器`demo`...
兼容主流浏览器: 支持IE6和IE6+, Firefox, chrome, Opera, Safari 接口简洁: 在普通表格的基础上增加父子关系的自定义标签就可以 组件性能高: 内部实现了只绑定了table的事件、使用了css sprite合并图片等 提供...
虽然现代浏览器倾向于使用更通用的开发者工具,如Chrome DevTools或Firefox Developer Tools,但了解IE的DOM查看器对于支持旧版本IE的项目仍然至关重要。 **压缩包子文件的文件名称列表** 这些文件名代表了可能在...
这个功能在现代浏览器如Firefox、Chrome、Safari、Opera、傲游和搜狗中都能正常工作,但遗憾的是,它不支持较为老旧的IE8浏览器以及360和世界之窗浏览器。 首先,我们需要了解jQuery库的基本概念。jQuery是一个快速...
在JavaScript中,创建一个兼容不同浏览器的日历,特别是针对火狐(Firefox)这样的非主流浏览器进行优化,是一项重要的任务。本文将深入探讨如何使用JavaScript构建一个跨浏览器的日历,并重点讲解在火狐上的兼容性...
- 兼容各种浏览器,包括IE8+、Chrome、Firefox、Safari和Edge等。 4. **性能优化**:在处理大量数据时,频繁的DOM操作可能导致性能下降。为了优化,插件可能会采用节流或防抖技术,限制滚动事件的触发频率,避免...
在网页开发中,兼容性问题始终是一个棘手的挑战,特别是对于不同的浏览器,例如Firefox (FF) 和 Internet Explorer (IE)。本示例探讨的是如何创建一个既能兼容Firefox又能兼容Internet Explorer的动态表格(Table)...
9. **兼容性**:与主流的浏览器兼容,包括Firefox、Chrome、Safari、IE(至少到IE8)等。 10. **API和事件**:提供丰富的API接口和事件触发机制,便于开发者控制表格的行为和交互。 在实际应用中,开发人员通常会...
◦兼容主流浏览器: 支持IE6和IE6+, Firefox, chrome, Opera, Safari ◦接口简洁: 在普通表格的基础上增加父子关系的自定义标签就可以 ◦组件性能高: 内部实现了只绑定了table的事件、使用了css sprite合并图片等 ◦...
7. **兼容性**:作为一款 jQuery 插件,colResizable-1.5 一般兼容大多数现代浏览器,包括 Chrome、Firefox、Safari、Edge 和 IE10 及以上版本。但使用前应确保目标用户群体的浏览器支持情况。 8. **应用实例**:此...
EasyUI 支持主流的现代浏览器,如Chrome、Firefox、Safari和Edge,但可能在一些较旧的IE版本上表现不佳。在开发过程中,应考虑兼容性问题,并采取适当的解决方案。 总的来说,EasyUI为前端开发提供了强大的工具,...
- **问题描述**:在IE中,`event`对象包含`x`和`y`属性,但在Firefox中则提供`pageX`和`pageY`属性。 - **解决方法**:推荐使用统一的方法获取坐标值,例如可以定义一个函数`getEventXY(event)`,在其中根据浏览器...