Web開發(fā)人員每天都使用JavaScript為他們創(chuàng)建的網(wǎng)站帶來必要的功能。jQuery提供了一個提供強大功能和靈活性的特殊工具。jQuery是一個JavaScript庫,有助于簡化和標準化JavaScript代碼和HTML元素之間的交互。JavaScript允許網(wǎng)站具有交互性和動態(tài)性,jQuery是一種有助于簡化流程的工具。
成都創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的石棉網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
同時JQuery也是一個緊湊,快速且功能豐富的JavaScript庫。它通過易于使用的API在大量瀏覽器中運行,使得HTML文檔遍歷和操作,事件處理,動畫和Ajax更加簡單。JQuery結(jié)合了多功能性和可擴展性,改變了數(shù)百萬人編寫JavaScript的方式。換句話說,由于JQuery,JavaScript以簡化形式呈現(xiàn)。閱讀起來相當舒服。
擴展資料:
JQuery的優(yōu)點
1、易于使用:如果我們將它與標準JavaScript和其他庫進行比較,它使用起來既簡單又快捷。它由簡單的語法組成,并且需要較少的代碼行。
2、巨大的庫:與其他庫相比,它允許您執(zhí)行大量功能。
3、插件的可用性:可以使用許多預(yù)先編寫的插件來立即壓縮開發(fā)過程。這背后的另一個優(yōu)點是腳本的效率和安全性。
4、綜合教程:?JQuery網(wǎng)站提供了不言自明的文檔和教程,以便在絕對的編程初學者面前進行理解。
5、AJAX支持:它允許我們輕松地開發(fā)Ajax模板,Ajax支持更流暢的界面,可以在頁面上執(zhí)行操作,而不需要重新加載整個頁面。
6、靈活性:所有瀏覽器中的契約,是目前最流行的JavaScript庫。
!DOCTYPE?HTML
html
head
meta?charset=UTF-8
titlerecursion/title
style?type="text/css"
/style
script?type="text/javascript"?src="jquery-1.8.0.min.js"/script
script?type="text/javascript"
$?(function?()
{
var?svg?=?$?("svg?xmlns=''?version='1.1'/svg");
svg.css?(
{
"width"?:?"200px",
"height"?:?"200px"
});
var?s?=?$?("path?d='M10,10?L10,20?L20,20?z'?style='fill:rgb(235,252,121);?fill-opacity:1;?stroke:black;?stroke-width:1'?/");
svg.append?(s);
$?("[name='frame']").append?(svg);
});
/script
/head
body
iframe?name="frame"/iframe
/body
/html
首先,jquery是操作普通xhtml的,對應(yīng)svg這種特殊的標簽,或者說xml,瀏覽器如何區(qū)分,當然是通過命名空間:namespaceURI,比如普通html的是,而svg也有自己的命名空間:,jquery在操作的時候沒有加以區(qū)分,因此導(dǎo)致了這樣的錯誤。怎么辦,使用setAttributeNS創(chuàng)建svg標簽即可。
其次,我們創(chuàng)建大量標簽的時候,喜歡innerHTML=template這種方式,svg也可以,應(yīng)該說大部分瀏覽器都可以,可是有些瀏覽器不可以,我們就需要自己提供兼容的innerSVG方法了。
最后,關(guān)于上面說的二點,你都可以對比這個例子。
之前普通dom節(jié)點用jquery來寫,svg之類的節(jié)點操作用d3.js來寫,然后現(xiàn)在嘗試寫一個小組件,就想寫個不依賴任何庫的版本。
之前用d3.js來寫可視化組件,有著庫依賴的問題,這次想自己把庫的依賴去掉,用原生態(tài)javascript寫。
然后第一件事情我就懵逼了,用jquery的 $("svg/svg ) 生成也是一樣。
然后出來的是一個普通標簽名叫svg的標簽,沒有svg的任何渲染
而本來應(yīng)該是下圖的效果的。
然后就順便普及了svg的知識,svg雖然和dom元素很像,但是實際上是xml,它比html更加嚴格,有著自己的命名空間,如果你在html里面直接寫,那么會被加上命名空間解析,如果你想要用js來創(chuàng)建,那么你就得自己來寫。
我寫的是一個詞云插件,我的算法是根據(jù)一個text來判斷碰撞與否,所以我要知道兩個text的位置和高度和寬度。
對于普通的元素,可以通過jquery.css("width")來實現(xiàn),但是這個對于svg元素,jquery也再一次失效。而這個時候,getBoundingClientRect(),就起效了。
!DOCTYPE HTML
html
head
title/title
link href="css/reset.css" rel="stylesheet" type="text/css"
link href="css/layout.css" rel="stylesheet" type="text/css"
link href="css/style.css" rel="stylesheet" type="text/css"
script src="js/jquery.js" type="text/javascript" /script
script src="js/jquerysvg/jquery.svg.js" type="text/javascript" /script
script src="js/jquery-ui.js" type="text/javascript" /script
script type="text/javascript"
jQuery(document).ready(function(){
$('#target').svg({onLoad: drawInitial});
$('circle').click(function(e){
drawShape(e);
var shape = this.id;
});
$('.drag').mousedown(function(e){
var shape = this.id;
this.setAttribute("cx", e.pageX);
this.setAttribute("cy", e.pageY);
});
})
function drawInitial(svg) {
svg.add($('#svginline'));
}
function drawShape(e) {
var svg = $("#target").svg('get');
$('#result').text(e.clientX + ": " + e.pageX);
var dragme = svg.circle(e.clientX, e.clientY, 5, {fill: 'green', stroke: 'red', 'stroke-width': 3, class_: 'drag'});
//$(dragme).draggable();
}
/script
/head
body
div id="target" /div
svg:svg id="svginline"
svg:circle id="circ11" class="area" cx="75" cy="75" r="50" stroke="black" stroke-width="2" fill="red"/
/svg:svg
div id="result" ffff/div
/body
/html
看到網(wǎng)頁上炫酷的圖形輪廓線路徑動畫你是否會動心,想要自己來制作一個呢?其實這個特效實現(xiàn)起來并不難,使用輕量級HTML5插件jquery-drawsvg就可以實現(xiàn)了,jquery-drawsvg是一款輕量級的使用jQuery來繪制SVG圖形輪廓線路徑動畫的插件。該插件使用jQuery內(nèi)置的動畫引擎來使SVG元素中path元素產(chǎn)生動畫,其底層實現(xiàn)使用的是stroke-dasharray和stroke-dashoffset屬性。
該SVG路徑動畫插件的特點有:
輕量級,壓縮后小于2kb
使用簡單
支持Easing過渡動畫效果
演示地址:
插件下載地址:
使用方法:
使用該SVG圖形輪廓線路徑動畫插件需要引入jQuery和jquery.drawsvg.js文件。
script src="js/jquery.min.js"/script
script src="js/jquery.drawsvg.js"/script
初始化插件
在頁面DOM元素加載完畢之后,可以通過下面的方法來使SVG圖形生成輪廓線動畫效果。
首先將初始化的對象實例保存為一個變量:
var mySVG = $('#my_svg_element').drawsvg();
然后就可以執(zhí)行動畫效果了:
mySVG.drawsvg('animate');
配置參數(shù)
下面是該SVG路徑動畫創(chuàng)建的可用配置參數(shù):
參數(shù)類型默認值描述durationInteger1000完成每一個路徑動畫的持續(xù)時間staggerInteger200每一個路徑動畫開始前的延遲時間easingStringswing使用jQuery
Easing插件的過渡動畫效果reverseBooleanfalse是否反向繪制callbackFunctionfunction()
{}路徑動畫完成之后的回調(diào)函數(shù)