Tag: DOM

焦点input框在加载

如何将光标聚焦在页面加载的特定input框? 也可以保留初始文本值,并将光标放在input的末尾? <input type="text" size="25" id="myinputbox" class="input-text" name="input2" value = "initial text" />

JQuery的html()与innerHTML

我可以完全依赖jQuery的html()方法行为相同的innerHTML ? innerHTML和jQuery的html()方法有什么区别吗? 如果这两个方法都做同样的事,我可以用jQuery的html()方法代替innerHTML吗? 我的问题是:我正在devise已经devise好的页面,页面包含表格,而在JavaScript中,正在使用innerHTML属性dynamic地填充它们。 该应用程序在Firefox上正常工作,但Internet Explorer触发一个错误: unknown runtime exception 。 我用jQuery的html()方法和IE的错误已经消失。 但我不确定它会适用于所有的浏览器,我不确定是否用jQuery的html()方法replace所有的innerHTML属性。 非常感谢。

jQuery事件.load(),.ready(),.unload()

只是一个简单的问题,为jQuery事件。 当加载DOM时,.load(),.ready()和.unload()是否按顺序运行? 当我看到jQuery文档时,答案似乎是。 <script type="text/javascript"> $(window).load(function () { // run code initializeCode(); }); $(document).ready(function() { //run code that MUST be after initialize }); $(window).unload(function() { Cleanup(); }); </script> 然而,.ready()中的代码在initializeCode()之前执行; 是执行,所以我觉得很奇怪。 现在,我必须将我的代码放在.onload()方法中,并在initializeCode()之后。 这意味着在.ready()块内。 有人可以解释我更多关于这个,因为我是新来的jQuery?

jQuery获取DOM节点?

可能重复: 如何从JQuery Selector中获取DOM元素 我可以用类似$('#element_id')东西来select一个使用jQuery的节点,但是我怎样才能得到DOM元素,用于非jQuery函数,期望类似于document.getElementById()会返回?

为什么nodelist没有forEach?

我正在编写一个简短的脚本来更改<abbr>元素的内部文本,但发现nodelist没有forEach方法。 我知道nodelist不是从Arrayinheritance的,但是看起来不像forEach会是一个有用的方法呢? 有没有一个特定的实现问题,我不知道,防止添加forEach nodelist ? 注意:我知道Dojo和jQuery都以某种forms为每个节点列表提供了forEach 。 由于限制,我不能使用。

window.location.href,window.location.replace和window.location.assign之间的区别

有什么区别 window.location.href="http://example.com"; window.location.replace("http://example.com"); window.location.assign("http://example.com"); 我在很多论坛上看到, window.location.assign()只是取代当前会话历史,因此浏览器的后退button将不起作用。 但是,我无法重现这一点。 function fnSetVariable() { //window.location.href = "http://example.com"; window.location.replace("http://example.com"); //window.location.assign("http://example.com"); } <a onmouseover="fnSetVariable();" href="PageCachingByParam.aspx?id=12" > CLICK </a>

我应该使用document.createDocumentFragment或document.createElement

我正在阅读关于文档片段和DOM回stream,并想知道document.createDocumentFragment如何不同于document.createElement因为它看起来都不存在于DOM中,直到我将它们追加到一个DOM元素。 我做了一个testing(下面),他们都花了相同的时间(约95毫秒)。 据猜测,这可能是由于没有适用于任何元素的样式,所以没有回stream可能。 无论如何,根据下面的例子,为什么我应该使用createDocumentFragment而不是createElement插入到DOM中,以及两者之间的差异。 var htmz = "<ul>"; for (var i = 0; i < 2001; i++) { htmz += '<li><a href="#">link ' + i + '</a></li>'; } htmz += '<ul>'; //createDocumentFragment console.time('first'); var div = document.createElement("div"); div.innerHTML = htmz; var fragment = document.createDocumentFragment(); while (div.firstChild) { fragment.appendChild(div.firstChild); } $('#first').append(fragment); console.timeEnd('first'); //createElement console.time('second'); var span […]

有没有一种很好的方法将JavaScript对象附加到HTML元素?

我想将一个JavaScript对象与一个HTML元素相关联。 有一个简单的方法来做到这一点? 我注意到HTML DOM定义了一个setAttribute方法,看起来这是为任意属性名定义的。 但是,这只能设置string值。 (你当然可以用这个来把密钥存储到字典中。) 具体 (虽然我最感兴趣的一般问题): 具体来说,我有HTML元素代表树中的节点,我试图启用拖放,但jQuery的拖放事件只会给我的元素被拖放。 获取信息给事件处理程序的正常模式似乎是在创buildJavaScript对象的同时创buildHTML元素,然后通过closures这些JavaScript对象来定义事件处理程序 – 但是在这大小写(我可以有一个全局对象,当一个拖动开始填充…但这感觉有点讨厌)。

DOM中的JavaScript移动元素

假设我在页面上有三个<div>元素。 我如何交换第一个和第三个<div> ? jQuery很好。

javascript:select所有具有“data-”属性的元素(不含jQuery)

不使用jQuery,select所有具有特定data-属性的dom元素(比方说data-foo )是最有效的方法。 元素可以是不同的标签元素。 <p data-foo="0"></p><br/><h6 data-foo="1"></h6>