『壹』 如何用javascript判斷a標簽
如何用javascript判斷a標簽
<a href="javascript:void(0);" onclick="functionname()" >aaaa</a>
<a href="javascript:functionname('dd')" >ddddd</a>
<a href="javascript:;"onclick="functionname()" >ddddd</a>
<a href="#"onclick="functionname()" >ddddd</a>
通過上述幾種方法均可調用javascript角本。
相關知識:
1、在通過上述幾種方法調用js腳本的時候,可以在js的函數中對相關內容進行驗證,例如驗證失敗,則返回false;即return flase;則不執行任何操用。
2、可以通過js實現種類繁多的效果。
3、onclick 事件說明:
onclick 事件會在對象被點擊時發生,這個點擊是指用戶用滑鼠在對象上按下滑鼠,然後又抬起滑鼠的情況下才會激活,只是按下不抬起滑鼠不會激活。
即a標簽被點擊後執行引號中的js程序代碼,這個代碼基本上可以放在任何一個html對象之中執行,如<div><body><ul><li><a><p>等等。
4、如果在按下滑鼠就激活,可以將以上的代碼進行替換,將onclick替換為onmousedown
5、其它滑鼠相關事件說明,可根據需要進行替換。
onDblClick 雙擊滑鼠
onMouseUp 滑鼠抬起
onMouseOver 滑鼠移動到對象上方
onMouseMove 滑鼠移動時執行
onMouseOut 滑鼠移出對象
『貳』 頁面處於激活狀態時調用Js方法
用js調用頁面處於激活狀態時用function函數輪燃調臘宏虛用,在調用的body後加上window.onload方法來實現刷新。
一、用JS方法
1.最簡單的調用方式,直接寫到html的body標簽裡面:
<body onload="myfunction()">
<html> <body onload="func1();func2();func3();"> </body> </html>
2.在JS語句調用:
<script type="text/javascript">
function myfun()
{ alert("this window.onload"絕棗); } //*用window.onload調用myfun()*//
window.onload = myfun;//不要括弧
</script>
『叄』 javaScript 激活新打開的窗口
用js showDailog獨占模式打開喚渣首
target起不到你想要和數的梁拍效果
-------------------
target只是你打開窗口的目標
不能顯示到當前焦點狀態下
所以還是考慮用獨占模式吧
『肆』 javascript如何使用
1、字元串的創建
創建一個字元串有幾種方法。最簡單的是用引號將一組字元包含起來,可以將其賦值給一個字元串變數。
var myStr = "Hello, String!";
我們在上面腳本創建了字元串,但本質上,它們並不是真正的字元串對象,准確地說,它們是字元串類型的值。要創建一個字元串對象,可使用如下語句:var strObj = new String("Hello, String!");
使用typeof運算符查看會發現,上面的myStr類型為string,而strObj類型為object。
如果想知道字元串的長度,使用其length屬性:string.length。
得到字元串的指定位置的字元使用方法:string.charAt(index);
2、字元串的拼接
非常簡單,就用一個"+"將兩個字元串"相加":
var longString = "One piece " + "plus one more piece.";
要將多個字元串累積為一個字元串,還可以使用"+="操作符:
var result = "";
result += "My name is Anders"
result += " and my age is 25";
要在字元串中添加換行符,需要使用轉義字元"/n":
var confirmString = "You did not enter a response to the last " +
"question./n/nSubmit form anyway?";
var confirmValue = confirm(confirmString);
但這種方法只能用在像警告、確認對話框之類的情況下,如果將這段文本作為HTML內容呈現,就無效了,此時用"<br>"代替它:
var htmlString = "First line of string.<br>Second line of string.";
document.write(htmlString);
String對象還提供了方法concat(),它完成與"+"相同的功能:
string.concat(value1, value2, ...)
不過concat()方法顯然不如"+"來得直觀簡潔。
3、訪問字元串的子串
使用substring()或slice()方法(NN4+, IE4+),下面說明它們的具體用法。
substring()的原型為: string.substring(from, to)
第一個參數from指定了子字元串在原字元串中的起始位置(基於0的索引);第二個參數to是可選的,它指定了子字元串在原字元串的結束位置(基於0的索引),一般情況下,它應比from大,如果它被省略,那麼子字元串將一直到原字元串的結尾處。
如果參數from不小心比參數to大了會怎樣?JavaScript會自動調解子字元串的起止位置,也就是說,substring()總是從兩個參數中較小的那個開始,到較大的那個結束。不過要注意,它包含起始位置的那個字元,但不包含結束位置的那個字元。
var fullString = "Every dog has his day.";
var section = fullString.substring(0, 4); // section is "Ever".
slice()的原型為: string.slice(start, end)
參數start表示子串的起始位置,如果為負數,那麼可以理解為倒數第幾個開始,例如-3表示從倒數第三個開始;參數end表示結束位置,與start一樣,它也可以為負數,其含義也表示到倒數第幾個結束。slice()的參數可以為負數,所以要比substring()更加靈活,但沒那麼寬容了,如果start比end要大,它將返回一個空字元串(示例略)。
還有一個方法是substr(),其原型為: string.substr(start, length)
從原型可以看出它的參數的含義,start表示起始位置,length則表示子字元串的長度。JavaScript標准不提倡使用該方法。
4、字元串的大小寫轉換
使用toLowerCase()和toUpperCase()方法:
var city = "ShanGHai";
city = city.toLowerCase(); // city is "shanghai" now.
5、判斷兩個字元串是否相等
先將用戶的輸入值全部轉換為大寫(或小寫),然後再行比較:
var name = document.form1.txtUserName.value.toLowerCase();
if(name == "urname")
{
// statements go here.
}
JavaScript有兩種相等運算符。一種是完全向後兼容的,標準的"==",如果兩個操作數類型不一致,它會在某些時候自動對操作數進行類型轉換,考慮下面的賦值語句:
var strA = "i love you!";
var strB = new String("i love you!");
這兩個變數含有相同的字元序列,但數據類型卻不同,前者為string,後者為object,在使用"=="操作符時,JavaScript會嘗試各種求值,以檢測兩者是否會在某種情況下相等。所以下面的表達式結果為true: strA == strB。
第二種操作符是"嚴格"的"===",它在求值時不會這么寬容,不會進行類型轉換。所以表達式strA === strB的值為false,雖然兩個變數持有的值相同。
有時代碼的邏輯要求你判斷兩個值是否不相等,這里也有兩個選擇:"!="和嚴格的"!==",它們的關系就類似於"=="和"==="。
討論:
"=="和"!="在求值時會盡可能地尋找值的匹配性,但你可能還是想在比較前進行顯式的類型轉換,以"幫助"它們完成工作。比如,如果想判斷一個用戶的輸入值(字元串)是否等於一個數字,你可以讓"=="幫你完成類型轉換:
if(document.form1.txtAge.value == someNumericVar) { ... }
也可以提前轉換:
if(parseInt(document.form1.txtAge.value) == someNumericVar) { ... }
如果你比較習慣於強類型的編程語言(比如C#,Java等),那麼這里你可以延續你的習慣(類型轉換),這樣也會增強程序的可讀性。
有一種情況需要注意,就是計算機的區域設置。如果用"<"和">"來比較字元串,那麼JavaScript把它們作為Unicode來比較,但顯然,人們在瀏覽網頁時不會把文本當作Unicode來閱讀:) 比如在西班牙語中,按照傳統的排序,"ch"將作為一個字元排在"c"和"d"之間。localeCompare()提供了一種方式,可以幫助你使用默認區域設置下的字元排序規則。
var strings; // 要排序的字元串數組,假設已經得到初始化
strings.sort(function(a,b) { return a.localeCompare(b) }); // 調用sort()方法進行排序
6、字元串的查找
使用string的indexOf()方法:
strObj.indexOf(subString[, startIndex])
strObj為要進行判斷的字元串,subString為要在strObj查找的子字元串,startIndex是可選的,表示查找的開始位置(基於0的索引),如果startIndex省略,則從strObj開始處查找,如果startIndex小於0,則從0開始,如果startIndex大於最大索引,則從最大索引處開始。
indexOf()返回strObj中subString的開始位置,如果沒有找到,則返回-1。在腳本中,可以這么使用:
if(largeString.indexOf(shortString) != -1)
{
// 如果包含,進行相應處理;
}
也許一個字元串會包含另一字元串不止一次,這時第二個參數startIndex也許會派上用場,下面這個函數演示如何求得一個字元串包含另外一個字元串的次數:
function countInstances(mainStr, subStr)
{
var count = 0;
var offset = 0;
do
{
offset = mainStr.indexOf(subStr, offset);
if(offset != -1)
{
count++;
offset += subStr.length;
}
}while(offset != -1)
return count;
}
String對象有一個與indexOf()對應的方法,lastIndexOf():
strObj.lastIndexOf(substring[, startindex])
strObj為要進行判斷的字元串,subString為要在strObj查找的子字元串,startIndex是可選的,表示查找的開始位置(基於0的索引),如果startIndex省略,則從strObj末尾處查找,如果startIndex小於0,則從0開始,如果startIndex大於最大索引,則從最大索引處開始。該方法自右向左查找,返回subString在strObj中最後出現的位置,如果沒有找到,返回-1。
『伍』 js 獲取 html標簽
1、新建一個html文件,命名為test.html。
『陸』 怎麼通過JS添加A標簽
需要准備的指握材料分別有:電腦、html編輯器、瀏覽器。
1、首先,打開html編輯器,新建html文件,例如:index.html。
『柒』 怎樣在js中生成多個一標簽
用原生的js有兩種方式
第一種:直接給父級內容中直接添加標簽
<body>
<div id='div'></div>
</body>
<script type='text/javascript'>
var obj = document.getElementById('div');
obj.innerHTML = '<span>11112222</span>';
</sciprt>
第二種:用原生回js來創建單答個標簽
<script type='text/javascript'>
var obj=document.getElementById('div');
var span=document.createElement('span');
『捌』 JS如何觸發A標簽
settimeout(函數,時間);
『玖』 bootstrap框架里邊的scrollspy怎麼使用
1.框架
1.1全局樣式
使用HTML5的doctype,scaffolding.less中定義全局樣式,從2開始使用normalize.css,並使用reset.less進行簡化
1.2默認柵格系統
940px寬12列柵格,使用row與span[NUM]的class來控制,使用offset[NUM]來控制偏移,於non-fluid可以直接嵌套,提供了四種響應式方案
1.3流動柵格系統
基於百分比,將row改為row-fluid即可使用,內嵌注意寬度是按照父列的百分比進行計算的
1.4自定義柵格
於variables.css中改變變數,默認列12,寬60px,間隔20px,要保證響應性還得修改responsive.less中內容
1.5布局
container為940px居中,container-fluid則為流體布局
1.6 響應式設計
responsive.less中提供了一組media query:
智能手機《=480px;流式列,非固定寬度
垂直平板《=767px;流式列,非固定寬度
水平平板》=768px;42px 20px
默認》=980px; ? ? ?60px ?20px
大解析度》=1200px;70px 30px
要求添加meta標簽,<meta name=」viewport」 content=」width=device-width, initail-scale=1.0″>
有諸如.visible-phone等支持類
2.基礎CSS
2.1 排版
整個排版單位基於variables.less中@baseFontSize與@baseLineHeight兩個變數;
強調:string加粗,em傾斜,abbr縮寫【title屬性存放顯示信息,.initialism會減小縮略詞字體】,address【使用br換行】
引用:blockquote【cite屬性存放來源URL,.pull-left或right決定內容居左右】,small用於引言作者【會在內容前加入破折號】
列表:ul無序號有黑點,ul.unstyled無樣式,ol有數字序號,dl描述,dl.dl-horizontal水平描述
2.2代碼
code行級代碼,pre塊級【<>需要轉義,.pre-scrollable可以設置350px最大高度】,應用.prettyprint和.linenums來美化代碼【使用google prettify】
2.3表格
table thead【tr】 tbody【tr】tr【td或th】th【必須在thead之內】 caption;
.table行之間有水平線分割【2.0開始為默認】 .table-borderd 【邊角為圓角】.table-striped 奇偶分開【使用:nth-child ie7-8不支持】 .table-condensed 緊湊豎直方向padding減半 幾個可以組合使用
2.4表單
四種表單:.form-vertical【2.0後默認,控制項標簽文字左對齊】.form-inline【左對齊,控制項inline-block】 .form-search【文本框圓化】 .form-horizontal【左浮動,標簽與控制項居於同一行且文字右對齊】
支持控制項:文本輸入框,單選,復選,下拉,多選,上傳,文本域
控制項組:.control-group .control-label以及.controls【默認label應該與控制項在同一行?】
設計了各種控制項狀態【如focus,disabled,去除webkit的outline】,包含.error .warning .success驗證樣式
擴張控制項:.span*來指定輸入框大小,使用.input-mini或small或medium或big來指定input和select控制項大小,2.0開始對.checkbox或.radio應用.inline即可實現行級,用label.checkbox包含input[type=checkbox]即可羅列,前置或後置文本保證.add-on與input在同行, .help-inline與.help-block設置幫助文本
2.5 按鈕
可以應用到a button及input標簽上,.btn .btn-primary .btn-info等樣式【ie9不兼容】,.btn-large small mini等尺寸,.disabled類或disabled屬性可以禁用
2.6 圖標
使用.icon-前綴設置,用<i>x顯示圖標,用.icon-white顯示反白圖標,圖標定義在sprites.less中
3.組件
3.1按鈕
3.1.1按鈕組
建議一個組里只用一種元素<a>或<button>,使用.btn-group,組合.btn-toolbar包裝.btn-group即可合成工具條組件
3.1.2按鈕下拉菜單
下拉菜單也得嵌套在.btn-group中,使用dropdown-toggle與ul.dropdown-menu類,支持Bootstrap下拉插件,箭頭使用.caret,.dropdown-menu最近父標簽應用.dropup即可變為上彈菜單【會改變.caret箭頭方向】
3.2導航
3.2.1默認項
基類.nav,對齊使用.pull-left或.pull-right【依賴float】,標簽頁ul.nav-tabs,膠囊鏈接ul.nav-pills
3.2.2疊放式導航
指豎直疊放ul.nav-stacked
3.2.3下拉項
綜合使用下拉按鈕【js下拉項插件】,參考3.1.2
3.2.4導航列表
<i>使用標簽,.pider空表項顯示為水平間隔,.active選中項,.nav-header列表頭
3.2.5 標簽頁切換導航
用.tabbale的p嵌套.nav-tabs,存放容器為.tab-content,內容頁使用.tab-pane,標簽置底用.tabs-below,標簽居左.tabs-left,居右.tabs-right
3.2.6 導航條
固定導航條div.navbar與.navbar-fixed-top【必須預留40px或更多padding】,導航項ul.nav,li.pider-vertical分隔條,項目名稱a.brand,表單.navbar-form,對form.navbar-search中輸入框使用.search-query得到搜索框,下拉菜單參考3.2.3,導航條文本使用<p>,響應式嵌套在.nav-collapse.collapse並對按鈕都應有.btn-navbar【需要js切換插件】
3.2.7麵包屑導航
ul.breadcrumb
3.2.8頁碼
div.pagination>ul,同樣使用.active與.disabled,頁碼對齊使用.pagination-centered或.pagination-right,前後頁ul.pager【居於左右端li.previous與li.next】
3.3行內標簽
span.label默認樣式,span.label.label-success成功等
3.4 標號
span.badge默認樣式,span.badge.badge-success等
3.5 排版
主角單元div.hero-unit中嵌套,標題h1,可以嵌入small,
3.6 縮略項
ul.thumbnails>li.span*>a.thumbnail>img鏈接圖像,div.thumbnail塊狀內容
3.7通知
基類div.alert【2.0開始替代.alert-message】,例子:div.alert>a.close+strong,加強.alert-block提供更大的padding而.alert-heading修飾標題,語義強化.alert-error或success或info
3.8進度條
基本div.progress>div.bar[style=」width:60%」],條紋效果div.progress.progress-striped【動畫效果加上.active,使用css3漸變動畫,不支持ie】,語義加強.progress-info或success等
3.9雜項
消息牆div.well,關閉圖標a.close
4 jQuery插件
4.1對話框【bootstrap-modal.js】
$().modal({backdrop:true背景,keyboard:true支持ESC,show:true初始化顯示}) ,
觸發設置data-toggle=」modal」然後data-target=」#foo」或href=「#foo」,
對話框設置div.modal#foo即可:div.modal-header>a.close[data-dismiss=」modal」]+div.modal-body+div.modal-footer【顯示動畫效果bootstrap-transition.js,對.modal應用.fade即可】,方法.modal(「toggle」)或.modal(「show」)或.modal(「hide」),事件show,shown,hide,hidden
4.2 下拉項【bootstrap-dropdown.js】
樣式應用導航欄與膠囊鏈接,方法$().dropdown(),設置data-toggle=」dropdown」【也可以使用data-target=」#foo」或href=「#foo」來關聯下拉項與鏈接】
4.3 滾動偵測【bootstrap-scrollspy.js】
$(『#navbar』).scrollspy()
標記添加data-spy=」scroll」【導航鏈接必須有href=」#id」且對應有dom#id】,選項offset【默認為10】
4.4 可切換的標簽頁【bootstrap-tab.js】
方法$(『#myTab』).tab(『show』) 標簽頁需要設置data-target=』#id』或href=』#id』
標記添加data-toggle=」tab」或data-toggle=」pill」,
事件show與shown 【event.target指向激活標簽,event.relatedTarget指向之前激活的標簽】
4.5 工具提示【bootstrap-tooltips.js】
$(『#example』).tooltip(options) 中選項animation:true,placement:』top』,selector,title,trigger:』hover』,delay:{show:num, hide:100}
工具提示可以單獨設置data-屬性實現與js調用同樣的功能,指定一個selector即可【設置rel=」tooltip」】
方法:.tooltip(『show』)?.tooltip(『hide』)?.tooltip(『toggle』)
4.6 彈出提示【bootstrap-popover.js】
$(『#example』).popover(options)中選項animation:true,placement:』top』,selector,trigger:』hover』,title,content,delay
同樣可以單獨設置data-屬性,方法也相同
4.7 通知消息【bootstrap-alert.js】
$(「.alert」).alert()
用在通知,對關閉按鈕設置data-dismiss=」alert」即可定時關閉
方法$(「.alert」).alert(『close』),事件close closed
4.8 按鈕【bootstrap-button.js】
應用在btn與btn-group,設置data-toggle=」button」與data-toggle=」button-checkbox」與data-toggle=」button-radio」樣式
方法$().button(『toggle』) 按下
$().button(『loading』) 載入文本data-loading-text屬性中
$().button(『reset』)重置按鈕狀態
4.9 折疊手風琴【bootstrap-collapse.js】
$().collapse({toggle:false}),事件show,shown,hide,hidden
設置data-toggle=「collapse」和data-target即可變為折疊式,data-target接收一個css選擇器以選取元素添加,元素上需要添加.collapse,默認打開用.in
4.10 輪播【bootstrap-carousel.js】
$().carousel({interval:5000, pause:』hover』})
標記用data-屬性提供前後翻頁,data-slide=」prev或next」 方法.carousel(『cycle或pause或number或prev或next』) 事件slide,slid
4.11 輸入提醒【bootstrap-typeahead.js】
$().typeahead({source:[]數據源, items:8列表顯示個數, matcher:fn, sorter:fn, highlighter:fn}),
設置data-provide=」typeahead」
5. LESS
mixins.less中保存所有混合,編譯安裝npm intall -g less uglify-js lessc ./lib/bootstrap.less > bootstrap.css壓縮使用–compress,引用less.js 也可以重新編譯.less文件並進行本地存儲