理論上說的是生產(chǎn)環(huán)境的 source map
建議參考lib-flexible源碼讀后感:
最后給body設(shè)置font-size,作者團(tuán)隊(duì)也解釋了(原話):
body上設(shè)置12 * dpr的font-size值,為了重置頁(yè)面中的字體默認(rèn)值,不然沒有設(shè)置font-size的元素會(huì)繼承html上的font-size,變得很大。
這種情況下你就應(yīng)該考慮到數(shù)值的問題了,在給數(shù)據(jù)初始化之前最好是做一下數(shù)據(jù)集的判斷,如果有最小值的話,應(yīng)該給出一個(gè)可接受的最大值范圍。
假如oppo數(shù)據(jù)為10,那么圖表Y軸最大值應(yīng)該在100或者200合適(具體你可以聯(lián)調(diào)一下),那么超過200的就是到頂部的形狀(注意這個(gè)時(shí)候的300,800都是相同形狀噢)。
另外有種方案就是寫個(gè)控制器,用來篩選圖表Y軸最大值。比如按你的這個(gè)數(shù)據(jù)可以寫個(gè)select,分別有0-200,0-400,0-max,這幾種。
僅供參考...
.panel{
width:100%;
}
添加友好的seo,讓百度爬蟲更好的知道你的官網(wǎng),可以好好看看seo相關(guān)的一些建議,還有就是sem競(jìng)價(jià)排名了,根據(jù)關(guān)鍵字可以幫你置頂,這個(gè)價(jià)格比較貴,
不太贊成上面的回答,主要是但凡是一個(gè)對(duì)象,下面的表達(dá)式就成立這句話
你問的這個(gè)問題就是原型鏈,網(wǎng)上隨便搜都一大把,在這里問,很少有人會(huì)給你講一大堆,說的明明白白的,所以最好在去網(wǎng)上搜下,徹底理解下這塊
原型鏈中可以分為三個(gè)角色:構(gòu)造函數(shù),父對(duì)象,子對(duì)象
構(gòu)造函數(shù)就是一個(gè)函數(shù),如Object、Function、String、Array乃至一個(gè)最普通的自定義函數(shù),構(gòu)造函數(shù)在創(chuàng)建的時(shí)候會(huì)在內(nèi)存中同時(shí)創(chuàng)造一個(gè)對(duì)象,也就是原型對(duì)象,我們可以使用函數(shù).prototype來訪問這個(gè)對(duì)象
子對(duì)象是由構(gòu)造函數(shù)new出來的,在new的同時(shí)會(huì)將子對(duì)象繼承父對(duì)象,也就是原型對(duì)象,具體體現(xiàn)在子對(duì)象.__proto__ === 父對(duì)象
理解了上面的三角關(guān)系,理解原型鏈也就不難了
原型鏈可以看成一條祖孫鏈,最頂層是null(這是 js歷史遺留問題),其次是Object.prototype,第三層就是Function.prototype、String.prototype等
當(dāng)我們創(chuàng)建一個(gè)對(duì)象時(shí),可以使用var a = {}或者var a = new Object()這時(shí)候a對(duì)象繼承于Object.prototype,這可能是上面仁兄的依據(jù),但是當(dāng)我們創(chuàng)建一個(gè)對(duì)象b繼承于a的時(shí)候,那么b與Object.prototype就是爺孫的關(guān)系了
另外函數(shù),數(shù)組也是對(duì)象,function a(){},此時(shí)a是一個(gè)函數(shù),繼承于Function.prototype,那么他與Object.prototype也是爺孫關(guān)系
這里就不再多講了,不是三言兩語(yǔ)能講清的,還是那句話,多去網(wǎng)上查閱下資料,多方求證下
這里推薦下我之前寫的一篇文章 從數(shù)據(jù)類型講原型原型鏈 ,可以到最后面看原型鏈部分
花了兩天啃了一點(diǎn)D3.JS的書,
基本實(shí)現(xiàn)過程就是繪制畫布,在畫布中確定各個(gè)點(diǎn)的位置,然后利用線段生成器連線,在各個(gè)點(diǎn)上添加p和text標(biāo)簽,繪制原點(diǎn),加入日期和xxxx內(nèi)容。
// dataset格式
var dataset = [{
{
count: 0,
data: [
{
fieldValue: ''
},
{
fieldValue: ''
},
{
fieldValue" ''
},
...
],
time: ''
}]
// 繪制畫布
var svg = d3.select("#relevanceRuleConfig").append("svg")
.attr('id','PathId')
.attr("width", function(){
if(dataset.length > 6 ){
return (80 + dataset.length * 150); // 元素過多超出畫布時(shí)修改畫布長(zhǎng)度
}else{
return 960; // 畫布默認(rèn)寬度
}
})
.attr("height", height-80)
.append("g")
// 線段點(diǎn)的數(shù)據(jù)
var lines = [];
var x = 60;
var y = 180;
for(var index in dataset){
lines.push([x,y]);
x += 150; // 點(diǎn)與點(diǎn)之間間隔150px
}
// 創(chuàng)建線段生成器
var linePath = d3.svg.line();
// 添加路徑
svg.append('path')
.attr('d', linePath(lines)) // 使用了線段生成器
.attr('stroke', '#666')
.attr('stroke-width', '1px')
.attr('fill', 'none');
var addNode = function(i){
var self = this;
var nodeData = [dataset[i]];
var siteSave = [];
var node = svg.selectAll()
.data(nodeData)
.enter()
.append('g')
.attr('transform',function(d){
var x = 60 + 150 * i;
var y = 180;
return 'translate(' + x + ',' + y +')'
})
// 添加節(jié)點(diǎn)圖標(biāo)
node.append("circle")
.attr("r", 5)
.attr('fill','#f4952d');
// 添加日期文本
node.append("text")
.attr("dx", -30) //定義文本顯示x軸偏移量
.attr("dy", function(d){ return i%2?-42:50}) //定義文本顯示y軸偏移量
.attr('fill','#f4952d')
.style("text-anchor", 'start')//文字對(duì)齊顯示
.style('font-family','Times New Roman')
.text(function(d) { return d.date; });
// 添加日期外矩形
node.append("rect")
.attr('width',85)
.attr('height',25)
.attr("x", -40) //定義矩形x軸偏移量
.attr("y", function(d){ return i%2?-60:31}) //定義矩形y軸偏移量
.attr("rx", 5) //圓角
.attr("ry",5) //圓角
.attr('fill','none')
.attr("stroke", '#f4952d')
for(var j in nodeData[0].name){
//顯示前五家媒體
node.append("text")
.attr("dx", -30)
.attr("dy", function(d){
if(!(i%2)){
if(d.count > 5){
return -60 + -25 * j;
}else{
return -15 - 25 * j;
}
}else{
return 25 + 25*j;
}
})
.attr('class','siteName')
.attr('value',function(d){ return d.date})
.attr('class',function(d){ return d.date})
.style("text-anchor", 'start') //文字對(duì)齊顯示
.text(function(d) { return d.name[j]; })
//這兩個(gè)交互事件是用于將同一天的所有網(wǎng)站統(tǒng)一樣式的,如果之后需要每個(gè)網(wǎng)站單獨(dú)添加點(diǎn)擊事件可以直接刪除
.on('mouseover',function(){
var className = $(this).attr("value");
$('.' + className).css({'font-size':'16px','fill':'#f4952d','cursor':'pointer','transition':'all 0.5s ease','-moz-transition': 'all 0.5s ease','-webkit-transition':' all 0.5s ease','-o-transition':'all 0.5s ease'})
})
.on('mouseout',function(){
var className = $(this).attr("value");
$('.' + className).css({'font-size':'14px','fill':'#333','transition':'all 0.2s ease','-moz-transition': 'all 0.2s ease','-webkit-transition':' all 0.2s ease','-o-transition':'all 0.2s ease'})
})
.on('click',getData);
}
if(nodeData[0].count == 0){
node.append("text")
.attr("dx", -25)
.attr("dy",function(){
if(!(i%2)){
return -15;
}else{
return 25;
}
})
.text('暫無數(shù)據(jù)')
.style('fill','#999')
.style('font-size','14px')
.style('font-family','Microsoft Yahei')
}
if(nodeData[0].count > 5){
// 媒體大于五家加入“...”
node.append("text")
.attr("dx", -30)
.attr("dy", function(d){
if(!(i%2)){
return -40;
}else{
return 145;
}
})
.attr('value',function(d){ return d.date})
.attr('class',function(d){ return d.date})
.style("text-anchor", 'start')//文字對(duì)齊顯示
.text('...')
.on('click',getData);
// 顯示媒體參與數(shù)量
node.append("text")
.attr("dx", -30)
.attr("dy", function(d){
if(!(i%2)){
return -15;
}else{
return 170;
}
})
.attr('fill','#666')
.attr('class','mediaJoin')
.attr('value',function(d){ return d.date})
.style("text-anchor", 'start')//文字對(duì)齊顯示
.text(function(d) { return ('共' + d.count + '家媒體參與'); })
.on('click',getData);
}
}
for(var index in dataset){
addNode(index)
}
if (dataset.length == 1){
svg.attr('transform','translate(400,0)')
}else if (dataset.length == 2){
svg.attr('transform','translate(320,0)')
}else if (dataset.length == 3){
svg.attr('transform','translate(240,0)')
}else if (dataset.length == 4){
svg.attr('transform','translate(160,0)')
}else if (dataset.length == 5){
svg.attr('transform','translate(80,0)')
}else{
svg.attr('transform','translate(0,0)')
}
這是最后實(shí)現(xiàn)的魚骨圖效果
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Test</title>
</head>
<body>
<div>
<a href="javascript:void(0);">11</a>
<a href="javascript:void(0);">22</a>
<a href="javascript:void(0);">33</a>
</div>
<script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
$("div").on("click", 'a', function(){
var currentItem = $(this)
console.log(currentItem.text())
});
</script>
</body>
</html>
$("div").on("click", ***$("a")*, function(){ 里面的$("a") 應(yīng)該改成'a',這樣就能通過$(this)獲取到當(dāng)前點(diǎn)擊的對(duì)象啦
你的每一個(gè)按鈕綁定的事件是一樣的,當(dāng)startBtn變的時(shí)候,當(dāng)然都變了
這個(gè)思路是錯(cuò)的
你可以換成保存播放的index,點(diǎn)擊這只當(dāng)前播放的index
閉包了解一下
個(gè)人覺得是因?yàn)镋ventEmitter的任何實(shí)例,都是可以執(zhí)行event.prototype.init,如果已經(jīng)存在的一個(gè)event執(zhí)行了init方法,就需要經(jīng)過IF判斷
原來是自己一直在轉(zhuǎn)牛角尖 獲取不了數(shù)據(jù)跟前后端約定的回調(diào)函數(shù)名稱有關(guān),還有不需添加response的頭文件信息(具體原理沒有研究過)
stable最新版是66吧,我用66版看官方文檔中的MessageBox并沒有問題
beta/dev版有bug很正常的,一般來說正常用戶不會(huì)用這種版本
一般云服務(wù)的對(duì)象存儲(chǔ)只有簡(jiǎn)單的防盜鏈設(shè)置(也就是信任域名),針對(duì)你的情況我覺得可以先設(shè)置信任域名,只能在你的網(wǎng)站上訪問,再在自己的網(wǎng)站上設(shè)置不登錄看不到圖片(用統(tǒng)一的圖片代替)或者干脆不登錄看不到文章。
在setTop里面吧index存起來不就好了,在cancelTopTop取這個(gè)存起來的index就是原始位置
你是不是哪個(gè)v-on上綁定了audio方法, 但是你還沒寫, 模糊感覺自己好像也看到過這個(gè)提示, 是因?yàn)檫@個(gè)原因.
全局搜索下audio吧
1.overflow: hidden的作用是解決子元素有浮動(dòng)元素超出父元素或子元素超出父元素高度的時(shí)候顯示完整子元素
2.第二段代碼隱藏,#index_b_hero屬性為空,那么title_img的定位就會(huì)找main元素,但是main元素的寬高都為0,所以不顯示
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問,美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。