「短文」如何在 JavaScript 中随机数组
November 03, 2022
1 min
大家好,今天我们来花 1 分钟来学习 DOM 相关的基础操作的第六部分,内容虽然简单,但是还是有必要归纳总结的,希望这些整理对大家有所帮助。
在 ele 元素后插入 html:
ele.insertAdjacentHTML('afterend', html);
在 ele 元素之前插入 html:
ele.insertAdjacentHTML('beforebegin', html);
假设 elements 是一个匹配给定选择器的 NodeList:
const elements = document.querySelectorAll(...);
您可以使用以下方法之一循环 DOM 元素:
[...elements].forEach(function(ele) { ... });
// `Array.from` is not supported on IE Array.from(elements).forEach(function(ele) { ... }); // Or [].forEach.call(elements, function(ele) { ... }); // Or [].slice.call(elements, 0).forEach(function(ele) { ... });
如果您不必支持 Internet Explorer,请使用 forEach 方法:
elements.forEach(function(ele) { ... });
将 ele 元素添加到目标元素的开头:
target.insertBefore(ele, target.firstChild);
默认情况下,按 Enter 或 Shift 和 Enter 将在 textarea 文本框生成新的一行。
在某些情况下,例如内联可编辑元素或消息传递应用程序(聊天程序),您希望在用户按下 Enter 时提交数据。换行的唯一方法是按 Shift 和 Enter。
假设我们有以下 textarea 文本输入框:
<textarea id="message"></textarea>
为了防止按下 Enter 键的默认行为,我们可以处理 keydown 事件:
const ele = document.getElementById('message'); ele.addEventListener('keydown', function (e) { // Get the code of pressed key const keyCode = e.which || e.keyCode; // 13 represents the Enter key if (keyCode === 13 && !e.shiftKey) { // Don't generate a new line e.preventDefault(); // Do something else such as send the message to back-end // ... } });
// Disable scrolling on the `body` element when opening a modal document.body.style.overflow = 'hidden'; // Allow to scroll when closing the modal document.body.style.removeProperty('overflow');
false
ele.onclick = function(e) { // Do some thing ... return false; };
或者在单行代码里直接调用
<form> <button type="submit" onclick="return false">Click</button> </form>
我不推荐这种方法,因为:
preventDefault()
方法此方法适用于内联属性:
<button type="submit" onclick="event.preventDefault()">Click</button>
event handlers
ele.onclick = function(e) { e.preventDefault(); // Do some thing ... }; ele.addEventListener('click', function(e) { e.preventDefault(); ... });
注意:
注:本文属于原创文章,版权属于「前端达人」公众号及 qianduandaren.com 所有,未经授权,谢绝一切形式的转载