//?你好,以在?BODY?生成?DIV?為例子給你講一個(gè)吧?
創(chuàng)新互聯(lián)是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、重慶小程序開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十多年以來,已經(jīng)為1000+不銹鋼雕塑各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的1000+客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。
script?src=""?type="text/javascript"/script
script?type="text/javascript"
var?create?=?4;????//?定義一個(gè)數(shù)字,用于指定要生成多少個(gè)DIV
var?idStr?=?"";???//?這里是生成之后的所有?div?的??id?字符串
var?idList?=?new?Array();????//?這里是生成之后,所有?div?的?id?數(shù)組
$(function()?{
//?這里循環(huán)生成?create?個(gè)?div
for?(var?i?=?1;?i?=?create;?i++)?{
//?這里指定?id?=?"div"?+?i,對(duì)應(yīng)為?div1?div2?div3
var?id?=?"div"?+?i;
var?div?=?$("div?id='"?+?id?+?"'"?+?id?+?"/div");
$("body").append(div);//?body?拼接一個(gè)?div
idStr?+=?id?+?"?";????//?拼接?id?字符串
idList.push(id);??????//?把?id?放到數(shù)組里面
}
//?如果要獲得所有生成的?div?的?,可以提供兩種方法,第一種,在生成的時(shí)候,拼接字符串或者放到數(shù)組里面,第二種,在生成完?div?之后,遍歷獲取
//?1、這里通過循環(huán)獲取?id?
var?eachId?=?"";
$("body?div").each(function()?{
//?獲得div的id屬性,拼接起來
eachId?+=?$(this).attr("id")?+?"?";
})
alert("我是each出來的id:"?+?eachId);
//?2、這里是生成的時(shí)候拼接的
alert("我是帶出來的id:"?+?idStr);
//?3、這里是通過數(shù)組
var?listId?=?"";
for?(var?key?in?idList)?{
//?獲取數(shù)組中存儲(chǔ)的?id
listId?+=?idList[key]?+?"?";
}
alert("我是數(shù)組遍歷的id:"?+?listId);
})
/script
那個(gè)。。
在動(dòng)態(tài)向DOM中添加元素的時(shí)候,不可以使用標(biāo)簽的方式綁定事件。
因?yàn)闃?biāo)簽綁定事件是在頁面加載的時(shí)候處理的,而你動(dòng)態(tài)添加的元素在頁面加載的時(shí)候并不存在,更不要說讀取標(biāo)簽綁定事件了。
這里,既然你用到了jquery,為什么不用jquery的方式去綁定事件呢?
div.attr("onmousedown","moveInit(this,event);");
div.attr("onmousemove","Move(this,event);");
div.attr("onmouseup","stopMove()");
div.attr("onmouseout","stopMove()");
這一段,改為:
//?由于目標(biāo)函數(shù)需要參數(shù),所以這里使用匿名函數(shù)來調(diào)用
div.mousedown(function(event){
moveInit(this,event);
});
div.mousemove(function(event){
Move(this,event);
});
div.mouseup(stopMove);
div.mouseout(stopMove);
!DOCTYPE?HTML
html
head
titleyugi/title
meta?charset=UTF-8?/
style?type="text/css"
/style
script?type="text/javascript"?src="jquery-1.8.0.min.js"/script
script?type="text/javascript"
jQuery?(function?($)
{
var?body?=?$?("body");
$?(new?Array?(6)).each?(function?(i)
{
$?(new?Array?(3)).each?(function?(j)
{
body.append?($?("div菜單"?+?(i?*?3?+?j?+?1)?+?"/div").css?(
{
display:?"inline-table",
width:?"100px",
textAlign:?"center",
cursor:?"pointer",
margin:?"0px?0px?10px?10px",
border?:?"3px?solid?"?+?[
"red",?"green",?"blue"
][j?%?3]
}));
});
body.append?("br?/?");
});
});
/script
/head
body
body
/body
/html
純JAVASCRIPPT創(chuàng)建
(1):document.getElementById("要?jiǎng)?chuàng)建DIV位置的ID").innerHTML='divdiv里面的內(nèi)容/div';
(2):
var createDiv=document.createElement("div"); ?
createDiv.title="div title."; ?
createDiv.id="id"; ?
createDiv.class="class"; ?
createDiv.innerHTML="div里面的內(nèi)容!"; ?
document.body.appendChild(createDiv);//添加到BODY節(jié)點(diǎn)中?
JQUERY
$("#要?jiǎng)?chuàng)建DIV位置的ID").html('divdiv里面的內(nèi)容/div');
首先,只講思路方法不講具體代碼,別人直接給的永遠(yuǎn)不是自己的
創(chuàng)建新標(biāo)簽比較簡單百度下就知道了就不說了,然后至于定位到鼠標(biāo)位置,簡單介紹下思路第一點(diǎn),用clientX和clientY獲取鼠標(biāo)的坐標(biāo)即位置,然后給新建的div添加定位屬性,再將之前獲取的鼠標(biāo)位置的值賦值給div的top和left
ok,思路就這樣
利用jq的append()追加函數(shù)即可實(shí)現(xiàn),如:
html:
div?class="main"
input?type="button"?value="添加"?class="btn"?/
/div
JQ:
$(document).ready(function(){
$(".btn").click(function(){
var?html?=?'div?style="width:200px;?height:30px;?border:1px?dashed?red;?margin-bottom:20px;"/div';
$(".main").append(html);
});
});