为了做一个排序的页面实现的,
能使用上下键头,调整箭头所在行的div的位置
效果:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>DIV上下移动</TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function upMove(upA) {
// 通过链接对象获取表格行的引用
var attrValueDiv = document.getElementById("attrValueDiv");
var row = upA.parentNode;
var divChilds = attrValueDiv.childNodes;
var index = parseInt(row.getAttribute('index'));
// 如果不是第一行,则与上一行交换顺序
if (divChilds[index - 1] && index != 0) {
swapNode(divChilds[index], divChilds[index - 1]);
}
}
function downMove(downA) {
// 通过链接对象获取表格行的引用
var attrValueDiv = document.getElementById("attrValueDiv");
var row = downA.parentNode;
var divChilds = attrValueDiv.childNodes;
var index = parseInt(row.getAttribute('index'));
// 如果不是最后一行,则与下一行交换顺序
if (divChilds[index + 1]) {
swapNode(divChilds[index], divChilds[index + 1]);
}
}
function swapNode(node1, node2) {
var parent = document.getElementById("attrValueDiv");// 父节点
var t1 = node1.nextSibling;// 两节点的相对位置
var t2 = node2.nextSibling;
// 如果是插入到最后就用appendChild
if (t1)
parent.insertBefore(node2, t1);
else
parent.appendChild(node2);
if (t2)
parent.insertBefore(node1, t2);
else
parent.appendChild(node1);
var index1 = node1.getAttribute('index');
var index2 = node2.getAttribute('index');
node1.setAttribute('index', index2)
node2.setAttribute('index', index1)
}
function add(){
var attrValueDiv = document.getElementById("attrValueDiv");
var divChilds = attrValueDiv.childNodes;
var tempHtml = '';
tempHtml += "<div style='margin:4px;padding-left:5px;' index="
+ divChilds.length
+ ">"
+ " 名称:<input type=text name='attrValueName' size=10 maxlength='50' />"
+ " 编码:<input type=text name='attrValueCode' size=10 maxlength='50' />"
+ "<a onclick='upMove(this);' href='#' title='上移'><img src='up3.gif' style='border:0px;'/></a> "
+ "<a onclick='downMove(this);' href='#' title='下移'><img src='down3.gif' style='border:0px;'/></a></div>";
attrValueDiv.innerHTML += tempHtml;
}
//-->
</SCRIPT>
<BODY>
<input type='button' value='add' onclick='add();'>
<div id='attrValueDiv'>
</div>
</BODY>
</HTML>
分享到:
相关推荐
jquery实现div上下移动 <div> <div class="pt"> ;" onclick="up(this);">上移 ;" onclick="down(this);">下移 内容一 </div> <div class="pt"> ;" onclick="up(this);">上移 ;" onclick="down(this);">下移 ...
jQuery实现Div上下移动示例的知识点涵盖了jQuery的使用、DOM操作以及事件处理等方面的内容。下面将详细介绍这些知识点。 首先,了解jQuery是什么非常重要。jQuery是一个快速、小巧、功能丰富的JavaScript库,它简化...
DIV层上下移动
1. **事件监听**:首先,我们需要监听用户的鼠标事件,比如`mousedown`(鼠标按键按下)、`mousemove`(鼠标移动)和`mouseup`(鼠标按键释放)。当用户点击`div`元素时,`mousedown`事件被触发,开始拖动操作;在...
自己写的div模块上下移动无视刷新写入cookie
在描述中提到的“可以在同一页使用多个移动块”,意味着可以创建多个具有滚动效果的Div,每个Div都可以独立设置其滚动速度、方向以及动画效果。通过类(Class)的设计模式,我们可以将这些效果封装在独立的函数或...
移动时,更新div的位置;松开鼠标时,结束拖动。 ```javascript $(document).ready(function() { $('.draggable').on('mousedown', function(e) { $(this).addClass('dragging'); var dragItem = $(this); var ...
例如,可以使用`style`对象来动态更新`top`和`left`值,实现上下左右移动的效果。 5. **动画效果**:为了使移动更加平滑,可以使用`setInterval`或`requestAnimationFrame`函数来创建动画效果。通过不断改变`div`的...
在网页设计中,有时我们需要实现一个功能:当用户将鼠标悬停在某个div元素上时,显示特定的信息或另一个div。这个功能可以增强用户体验,...在实际应用中,可能还需要考虑响应式设计,确保在移动设备上的表现同样出色。
### 随滚动条移动的DIV层:实现与解析 #### 一、概述 在网页设计与开发过程中,为了提高用户体验以及页面的交互性,常常会遇到需要制作一个随滚动条移动的元素(如提示框、广告栏等)。本文将通过分析一段具体的...
这样,`#myDiv`就会随着滚动条的移动而上下移动。 3. **原生JavaScript实现** 如果不使用jQuery,也可以用原生JavaScript的`window.onscroll`事件和`getBoundingClientRect()`方法实现相同的效果: ```...
效果描述: 首先还是那句老话,非常幸运我们现在可以使用CSS3布局。 在布局的传统解决方案中,都是基于盒状模型,依赖display属性、position属性、float属性... 给你需要居中的div的父辈div增加附件中关键样式即可
例如,使用`slideUp()`和`slideDown()`方法可以让`div`上下展开或收起,`animate()`方法则可以实现自定义的动画效果,包括左右移动。通过链式调用JQuery方法,我们可以轻松地组合多个动作,如: ```javascript $("#...
在网页设计中,"div跟随固定在浏览器左边,上下不浮动,左右可跟随主体浮动"是一种常见的布局技巧,主要用于创建侧边栏或者导航菜单。这种布局模式可以使元素在页面滚动时始终保持在用户视野的左侧,提供持续的导航...
"上下左右拖动改变`DIV`比例代码"就是解决此类需求的一个解决方案,它提供了两种不同的拖动方式:左右拖动和上下拖动。 1. 左右拖动`DIV`边框: 这种效果允许用户通过鼠标在`div`元素的左右边缘进行拖动,从而改变...
### 交换两个div的位置 #### 知识点详解 在前端开发中,有时我们需要通过JavaScript来动态地调整页面元素的位置,比如实现两个`<div>`元素的位置互换。本篇文章将详细解析如何通过JavaScript实现这一功能,并深入...
定时器移动div 实现了div在屏幕上的循环移动。
标签“js上下键盘控制div移动”、“js键盘控制div移动”、“js上下左右键盘控制”进一步强调了这个话题的核心,即利用JavaScript处理键盘事件,并据此改变div的CSS属性(如`top`和`left`)来实现移动效果。...