99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀資深數(shù)據(jù)分析師和您聊聊手游的數(shù)據(jù)分析這點(diǎn)事
資深數(shù)據(jù)分析師和您聊聊手游的數(shù)據(jù)分析這點(diǎn)事
2016-10-20
收藏

資深數(shù)據(jù)分析師和您聊聊手游的數(shù)據(jù)分析這點(diǎn)事

在互聯(lián)網(wǎng)的各個(gè)時(shí)代,“數(shù)據(jù)”對(duì)于從業(yè)者來講一直是“富者不嫌,窮者不棄”的東西。究其原因是因?yàn)橥ㄟ^數(shù)據(jù)往往能夠集中對(duì)于本公司產(chǎn)品或者當(dāng)前的市場(chǎng)現(xiàn)狀做出一個(gè)相對(duì)客觀和直觀的反饋,而根據(jù)這些數(shù)據(jù)則有助于從業(yè)者對(duì)于本公司或者公司旗下產(chǎn)品的下一步調(diào)整做出參考。

而對(duì)于移動(dòng)游戲從業(yè)者來說,對(duì)于數(shù)據(jù)的依賴同樣存在。除去根據(jù)后臺(tái)數(shù)據(jù)對(duì)于本公司產(chǎn)品進(jìn)行分析以及公開的行業(yè)數(shù)據(jù)報(bào)告進(jìn)行趨勢(shì)預(yù)測(cè)外,通過對(duì)外曬本公司產(chǎn)品的留存,付費(fèi)率等數(shù)據(jù),也是一種移動(dòng)游戲行業(yè)比較常見的PR手法。

但是,在這個(gè)人人都在談數(shù)據(jù),并對(duì)數(shù)據(jù)見怪不怪的時(shí)代。對(duì)于數(shù)據(jù)的分析與解讀應(yīng)該如何進(jìn)行?卻并不是每個(gè)從業(yè)者都明白的話題,對(duì)于數(shù)據(jù)的分析應(yīng)該如何進(jìn)行?而數(shù)據(jù)分析的關(guān)鍵點(diǎn)又在哪里?如何能夠最大限度的體現(xiàn)出數(shù)據(jù)的價(jià)值? 帶著這些問題,龍虎豹在近日拜訪了業(yè)內(nèi)知名的數(shù)據(jù)分析機(jī)構(gòu)TalkingData,并通過與其資深分析師、市場(chǎng)智能部高級(jí)總監(jiān)陶京琪的溝通,為游戲行業(yè)的從業(yè)者在數(shù)據(jù)分析過程中能夠提供一些有價(jià)值的方法與幫助。

為閱讀方便,本文以陶京琪自述形式展開:

為什么要做數(shù)據(jù)分析

在開始這個(gè)話題之前,我想先從數(shù)據(jù)的意義和目的聊起。

在TalkingData內(nèi)部,我們有一句口號(hào)是“用數(shù)據(jù)說話”。意思是所有的東西都要用數(shù)據(jù)來表現(xiàn),因?yàn)閿?shù)據(jù)本質(zhì)上還是一種能夠相對(duì)的對(duì)于要研究的話題進(jìn)行客觀呈現(xiàn)的東西。但是真正能夠徹底明白“讓數(shù)據(jù)說話”這句話意思的人卻不多。

什么是“讓數(shù)據(jù)說話”呢?在我看來最重要的就是發(fā)揮數(shù)據(jù)的價(jià)值,那怎么讓數(shù)據(jù)發(fā)揮價(jià)值呢?其實(shí)這就牽扯到了當(dāng)前行業(yè)里數(shù)據(jù)報(bào)告普遍存在的問題。我今天還經(jīng)常看一些報(bào)告,不管是移動(dòng)互聯(lián)網(wǎng)的還是游戲行業(yè)的,我發(fā)現(xiàn)這里面有個(gè)最大的問題是,我們的數(shù)據(jù)報(bào)告往往還停留在五年前最基礎(chǔ)的數(shù)據(jù)統(tǒng)計(jì)方面,而這樣的報(bào)告所能呈現(xiàn)出的結(jié)果未必是我們想得到的。在這方面我覺得TalkingData還是比別人多走了一步的,我們每年的報(bào)告都可以比去年多做一些東西。

那么這些報(bào)告缺一些什么呢?在我看來可能就是分析與解讀,這兩方面是做數(shù)據(jù)比較關(guān)鍵的點(diǎn)。因?yàn)槊恳豁?xiàng)數(shù)據(jù)樣本其實(shí)都能夠反應(yīng)一樣?xùn)|西,關(guān)鍵在于你去如何分析和解讀它。

舉例來講我曾經(jīng)看見過一些游戲行業(yè)里常見的“曬留存”的數(shù)據(jù)新聞,這些數(shù)據(jù)也許在公布時(shí)有一些不完善(究竟哪些不完善我會(huì)在后面說明),但總得來講它仍然提供了一種解讀方式,并且從其目的出發(fā)仍不失為體現(xiàn)了數(shù)據(jù)的價(jià)值,只不過這種價(jià)值可能更多的局限于PR。但歸根結(jié)底,對(duì)于企業(yè)來講,它的確是產(chǎn)生了價(jià)值的。

事實(shí)上這就是數(shù)據(jù)產(chǎn)生的意義,你要做的是學(xué)會(huì)解讀和分析它。那接下來,我就來聊聊怎么做數(shù)據(jù)分析?

數(shù)據(jù)分析的前提

剛才在一開始的時(shí)候,我曾經(jīng)提到過一點(diǎn)就是今天的很多數(shù)據(jù)報(bào)告還停留在五年前,最基礎(chǔ)的數(shù)據(jù)統(tǒng)計(jì)方面,談不上什么分析與解讀。作為CP與發(fā)行商來說,我認(rèn)為這種分析你是應(yīng)該杜絕的,這也就牽扯到了我們接下來說的一個(gè)話題——數(shù)據(jù)分析的前提。

我認(rèn)為作為CP與發(fā)行商來說,你是這個(gè)行業(yè)里一線的從業(yè)者,因此你在做數(shù)據(jù)分析之前的時(shí)候目的一定是明確的:什么是目的呢?就是你心里明白你為什么要去做這個(gè)數(shù)據(jù)分析?在你心里是帶有一個(gè)問題的,這個(gè)問題不管是就整個(gè)行業(yè)的趨勢(shì)來說還是就你的產(chǎn)品出現(xiàn)的某一問題來說都是一樣的。而做數(shù)據(jù)分析的目的其實(shí)就是驗(yàn)證你發(fā)現(xiàn)的問題是否是存在的。

這話聽起來像是廢話,但實(shí)際上它卻決定了你的下一步行動(dòng)。在我們看來數(shù)據(jù)解讀不能就數(shù)據(jù)解讀數(shù)據(jù),而一定是要結(jié)合行業(yè)里的某一個(gè)現(xiàn)象看的,畢竟數(shù)據(jù)是能夠比較直觀地反應(yīng)出一個(gè)現(xiàn)象的。在這種情況下,你心里有一個(gè)明確的目的和你沒有目的做出的分析與解讀是完全不同的。

接下來,我就聊聊數(shù)據(jù)分析的三個(gè)過程。

首先:預(yù)判與篩選,明確你的目的是關(guān)鍵

前文說過,作為數(shù)據(jù)分析來說,你不能就數(shù)據(jù)說數(shù)據(jù),更不能把所有的數(shù)據(jù)進(jìn)行簡(jiǎn)單的匯總。因此在第一步做數(shù)據(jù)分析之前,你要做的是預(yù)判。

預(yù)判對(duì)于數(shù)據(jù)分析來說極為重要,前文說過數(shù)據(jù)分析與解讀的前提一定是為了解決某一問題而存在的。也正因此,預(yù)判在這個(gè)環(huán)節(jié)中所起到的作用就提出假設(shè)。說得通俗點(diǎn)就是:“要解決問題,先要證明問題?!?/span>

這一步看似簡(jiǎn)單,但實(shí)際是異常重要。這是因?yàn)榻裉斓囊苿?dòng)游戲運(yùn)營(yíng)是一件復(fù)雜與多元化的事情。也正因此,為證明問題的存在要通過多個(gè)不同緯度的數(shù)據(jù)來進(jìn)行。而預(yù)判這個(gè)環(huán)節(jié)也正是為此而存在,它決定的其實(shí)是根據(jù)你提出的問題而去提取哪個(gè)緯度的數(shù)據(jù)。

舉例來講,2015年之后,移動(dòng)電競(jìng)概念開始出現(xiàn),市場(chǎng)上打“移動(dòng)電競(jìng)”牌的產(chǎn)品越來越多。那么這一領(lǐng)域的市場(chǎng)是否就此進(jìn)入了一個(gè)強(qiáng)增長(zhǎng)周期,這個(gè)時(shí)候我就可以做出類似的預(yù)判,而后去篩選出多組數(shù)據(jù)。

比如說證明移動(dòng)電競(jìng)市場(chǎng)將處于強(qiáng)增長(zhǎng)周期,那么我首先要看的是市場(chǎng)環(huán)境,這其中用戶數(shù)量是一個(gè)緯度,其次還有CP數(shù)量、產(chǎn)品數(shù)量、在往后還有收入規(guī)模等等一系列的東西。通過這些緯度數(shù)據(jù)的篩選和提取,最后的結(jié)果我才能加以分析,并且得出一個(gè)結(jié)論是或者否。當(dāng)然說提取數(shù)據(jù)和分析都是之后的事情,在這一步中我們要做的僅僅是提出問題,而后根據(jù)問題在去找到幾個(gè)相關(guān)的緯度。

對(duì)于移動(dòng)游戲的發(fā)行商或者CP來說,根據(jù)自己所面對(duì)的問題,提出的問題是可大或可小的,重要的是與自己當(dāng)前面對(duì)的問題息息相關(guān),但并不因?yàn)閱栴}較為明顯而使得在隨后篩選數(shù)據(jù)緯度時(shí)也因此而簡(jiǎn)單。

舉例來講,某些CP在游戲上線一段時(shí)間之后會(huì)認(rèn)為自己的游戲已經(jīng)處于增長(zhǎng)乏力期,那么這時(shí)他提出了一個(gè)明顯的問題:我的游戲是否處于增長(zhǎng)乏力期難以后繼。這時(shí)表面看起來簡(jiǎn)單,只要提取過去一個(gè)周期內(nèi)新進(jìn)用戶的數(shù)量即可。但實(shí)際上剛才我們說過游戲運(yùn)營(yíng)往往是一個(gè)多元化導(dǎo)致的最終結(jié)果,因此你還要看游戲的收入規(guī)模是否也因此而走緩?你的用戶流失在過往的幾個(gè)月里是怎樣的?你的競(jìng)品數(shù)據(jù)是否在這一周期有了提升?

以及再往上的,你這個(gè)產(chǎn)品所處的領(lǐng)域是否收入也呈一樣的趨勢(shì)?通過這一系列多元化的數(shù)據(jù)篩選,最終你才能得出一個(gè)結(jié)論是這個(gè)游戲是否真的是增長(zhǎng)乏力?還是并非增長(zhǎng)乏力而是用戶流失過多?亦或是因?yàn)檎麄€(gè)細(xì)分領(lǐng)域的遇冷使得你的產(chǎn)品也被連帶。你需要做的就是用這個(gè)問題去找到相關(guān)的緯度,而后在去篩選提取數(shù)據(jù)。

但我需要在此聲明的一點(diǎn)是:作為預(yù)判這個(gè)環(huán)節(jié)來說,它僅限于“解決某一問題”時(shí)存在,對(duì)于一些行業(yè)趨勢(shì)性的預(yù)測(cè)是不存在這一環(huán)節(jié)的。其理由在于趨勢(shì)性的東西往往是通過數(shù)據(jù)直觀反應(yīng)出來的,因此如果真的是預(yù)測(cè)行業(yè)中的某一趨勢(shì)的話,則應(yīng)該做的是直接進(jìn)入篩選環(huán)節(jié),通過多個(gè)緯度去提取數(shù)據(jù)。

接下來是提數(shù)據(jù):加權(quán)處理這一刀砍在哪

預(yù)判與篩選這一步完成之后,接下來要做的事情就是按照劃分的緯度提取數(shù)據(jù)。在很多人看來這一步過后就可以直接進(jìn)入數(shù)據(jù)分析的環(huán)節(jié),但事實(shí)上這其中仍有一個(gè)加權(quán)處理即對(duì)數(shù)據(jù)進(jìn)行加工的過程。

為什么要進(jìn)行數(shù)據(jù)的加工?在很多人看來,原始的數(shù)據(jù)往往是最能夠顯示問題的根本的,但是作為分析師,我想說的是生活在移動(dòng)互聯(lián)網(wǎng)的大數(shù)據(jù)時(shí)代,你要做的絕對(duì)不是把所有的數(shù)據(jù)匯總在桌上就可以了。如果你真這么做了你會(huì)發(fā)現(xiàn)自己根本無法找到想要的數(shù)據(jù)。為什么這么說呢?因?yàn)樵诖髷?shù)據(jù)時(shí)代下是有一些過于零散的“臟數(shù)據(jù)”的,如果你一味地將之進(jìn)行匯總的話,那么毫無疑問它會(huì)把你的數(shù)據(jù)線帶偏。

舉個(gè)不夠恰當(dāng)?shù)睦?,你想針?duì)于iOS排行榜上的應(yīng)用去做一次用戶付費(fèi)分析。那你最后會(huì)發(fā)現(xiàn)在一萬名之后仍然存在著許多小的、不為人知的應(yīng)用APP,這些應(yīng)用APP,它們的使用行為過于零散,但是匯總到一起之后仍然是可觀的數(shù)量,最后的結(jié)果就是它可能會(huì)把你原本的數(shù)據(jù)線帶跑,使你對(duì)于數(shù)據(jù)的曲線產(chǎn)生一定的懷疑。而對(duì)于數(shù)據(jù)的加工,其實(shí)就是為了避免這種現(xiàn)象。你要把一些過于零散的數(shù)據(jù)砍掉。

那么如何去砍這一刀呢?這其實(shí)與第一個(gè)問題預(yù)測(cè)和篩選息息相關(guān)。你要明白你提取數(shù)據(jù)是干什么的?并且你要研究的問題是什么?在搞清楚這件事情之后,剩下的事就是把數(shù)據(jù)中那些不到1%的體量的小概率數(shù)據(jù)給砍掉。

在TalkingData我們是這么處理這個(gè)問題的。假設(shè)我要分析的是付費(fèi)用戶相關(guān)的數(shù)據(jù),那我會(huì)先去提數(shù)據(jù),其次根據(jù)數(shù)據(jù)計(jì)算體量。一般來講,頭部數(shù)據(jù)一定是占絕大多數(shù)的比例,那剩下的事我就要根據(jù)我研究的問題以及整個(gè)的數(shù)據(jù)體量去設(shè)置這一刀砍在哪。研究問題不同,最后這一刀的設(shè)置也不一樣。

總得來講,從你研究問題的角度出發(fā),隨后去根據(jù)行業(yè)、平均值以及主體數(shù)據(jù)量來設(shè)定這一刀卡在哪個(gè)位置,這個(gè)位置之下的全部數(shù)據(jù)都砍掉。

對(duì)于CP或者發(fā)行商來說,在這個(gè)過程中比較容易犯的問題是突然間忽略了自己要研究的課題。舉例來講CP或者發(fā)行商要研究的是游戲的主要付費(fèi)用戶的某一項(xiàng)行為,那么你就要記住你的主體是什么,至少應(yīng)該是個(gè)小R,而小R之下還有很多更小額的付費(fèi)用戶,其付費(fèi)呈碎片化就整體的付費(fèi)金額來說根本構(gòu)不成比例。

但這時(shí)有的CP就想了,這是活躍用戶呀?也是很有參考價(jià)值的。這樣想倒沒錯(cuò),但你要明白的一點(diǎn)是,在這里你的研究主體是“主要付費(fèi)用戶”,那這些用戶也許是活躍用戶不假,但他并不符合這個(gè)主體,最后的結(jié)果就是只能把你的曲線帶偏。最后結(jié)果我覺得你真因此做出錯(cuò)誤的反饋大R用戶走了,也不是你想要的。

當(dāng)然就數(shù)據(jù)的加權(quán)處理這事來說,這其實(shí)是一個(gè)挺復(fù)雜的過程??车襞K數(shù)據(jù)僅僅是其中的一部分,限于篇幅不在此多說。但這一步應(yīng)該是每一個(gè)想做分析的CP或者發(fā)行都需要了解的,最起碼你是要利用數(shù)據(jù)得出結(jié)論,而不是說被數(shù)據(jù)帶著跑。那樣的話就失去數(shù)據(jù)分析的本意了。

分析與解讀:你能正確解讀出數(shù)據(jù)反應(yīng)出的問題嗎

在開始這一部分的時(shí)候我首先要明確一點(diǎn)。那就是對(duì)于數(shù)據(jù)來說,分析與解讀的含義是不同的。具體來說分析主要是就數(shù)據(jù)說數(shù)據(jù),而解讀則是就行業(yè)說數(shù)據(jù)?;谶@一觀點(diǎn)來說,對(duì)于今天的CP與發(fā)行商來說,其實(shí)更需要的是后者。

我曾經(jīng)見過有一些CP或者發(fā)行商,問題也提出了,緯度也找了,數(shù)據(jù)也提了,但最后的結(jié)果是經(jīng)過分析沒有得出任何有價(jià)值的結(jié)果。在我看來其實(shí)這都是在解讀這一環(huán)節(jié)做得不夠。解讀這事咱們前面說過,一定是就行業(yè)或者是某一問題說數(shù)據(jù)的。因此你最首先需要對(duì)于某項(xiàng)數(shù)據(jù)對(duì)應(yīng)的指標(biāo)要有一個(gè)大概的了解,其次就是你應(yīng)該把這個(gè)數(shù)據(jù)結(jié)合到整個(gè)行業(yè)的高度去看,而不是單純地看一個(gè)數(shù)據(jù)。

舉個(gè)最簡(jiǎn)單的例子,CP或者發(fā)行商發(fā)現(xiàn)新增放緩了如臨大敵,但在這種情況下你參考的數(shù)據(jù)緯度可能都是正確的,但是你是否把它與行業(yè)結(jié)合了,并且充分地把你的公司模型放在這個(gè)行業(yè)里了?有的時(shí)候你的產(chǎn)品已經(jīng)推出三個(gè)季度甚至快一年了,那有可能產(chǎn)品就是進(jìn)入了穩(wěn)定期,它的新增在這種情況就是放緩了。

其次不在這個(gè)穩(wěn)定期的話,你是否應(yīng)該看看你做了什么推廣活動(dòng)?別家的企業(yè)做了什么推廣活動(dòng)?用戶的需求一定是不斷流動(dòng)的,在這種情況下我認(rèn)為你是需要進(jìn)行一個(gè)對(duì)比的。其次就是對(duì)于很多CP來說要學(xué)會(huì)擺正自己的位置。王健林說得好,先定一個(gè)可以實(shí)現(xiàn)的小目標(biāo),作為CP來講也是一樣,目標(biāo)不要定得太大。你別先把自己的某項(xiàng)數(shù)據(jù)單純和市場(chǎng)上的頭部產(chǎn)品比較。

所以就這個(gè)環(huán)節(jié)來說,表面上來看只要根據(jù)數(shù)據(jù)做一個(gè)匯總就可以了,但其實(shí)真正考驗(yàn)的是你的解讀功力,即將數(shù)據(jù)與行業(yè)、與自己的企業(yè)和產(chǎn)品充分在市場(chǎng)上對(duì)接的能力。說到這我想多說兩句關(guān)于之前提的一點(diǎn),就是行業(yè)里常見的發(fā)行商和CP曬數(shù)據(jù)的行為。其實(shí)這樣的行為目的,一是給自己發(fā)聲和曝光,第二則是通過這種方式引發(fā)渠道的注意能夠獲得更好的位置,而一些渠道也會(huì)對(duì)此另眼相看。

但這里有一個(gè)問題仍然在于對(duì)這份數(shù)據(jù)的解讀。這些數(shù)據(jù)在我看來一個(gè)比較明顯的問題就是,它沒有把自己的數(shù)據(jù)提取環(huán)境與樣本等相關(guān)的東西說清楚。舉例來講有的游戲說自己付費(fèi)率100%,但根據(jù)我們的理解可能行業(yè)里付費(fèi)超過50%都很困難。但有可能是這家CP的游戲是一個(gè)點(diǎn)卡制收費(fèi)的游戲,那在這種情況下他說100%的付費(fèi)率的確是沒有錯(cuò)的。

不過這里有一個(gè)問題就是對(duì)于發(fā)行也罷,還是渠道也罷,都需要對(duì)于數(shù)據(jù)有進(jìn)一步的解讀能力。舉例來講你看一個(gè)游戲首測(cè)數(shù)據(jù)不錯(cuò),次留是60%以上,那我覺得你還應(yīng)該看看其它的數(shù)據(jù),比如說一個(gè)時(shí)間周期的新增、留存以及付費(fèi),然后其次是背景信息,包括題材、類型,以及這個(gè)題材和這個(gè)類型之下真正的“市場(chǎng)尾燈”是誰,通過這些綜合的信息對(duì)于這些產(chǎn)品在市場(chǎng)上的前景得出一個(gè)大致的結(jié)論。這些緯度我覺得都是應(yīng)該你去看的,當(dāng)然就這塊來說我認(rèn)為渠道或者發(fā)行作為實(shí)操者肯定比我更有經(jīng)驗(yàn),因此我就不在這班門弄斧了。

數(shù)據(jù)分析咨詢請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請(qǐng)參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }