lkiarest lkiarest
关注数: 25 粉丝数: 8 发帖数: 1,796 关注贴吧数: 20
南京的朋友注意了,小心奸商--南京弘光科技有限公司 就是这家店:【南京弘光科技有限公司】在珠江路185号的联想专卖店。 工作人员对消费者有严重欺诈行为~~ 这个店的位置比较明显,就在珠江路快到百脑汇的一个十字路口。人流量很大,所以我相信在那边被坑的绝对不止几个人。现在写一下他们欺诈的手法,希望大家能够警惕类似骗局。 首先假如你选好了一款电脑去那边要直接购买, 开始一段时间,他们会极力推荐你买另一款很搓的电脑,说的天花乱坠。 加入你不为所动,坚持要你选择的那款, 他们会让你先付钱,然后他们找人去提货。 在等待的过程中他们还是会一直继续劝你买另一款(这个时候他们应该没有去提货,一直拖着)~~, 如果你还是坚持, 他们会说货已经提过来了,但是只有最后一个了,而且还是有各种毛病的。。 关键时候到了,你如果要求退款,他们说货已经出库,不能退了blablabla~反正就是你钱别想拿回来了, 那么你现在的选择就只能是买这个他们说有毛病的,或者换另一款,还是他们推荐的。。。 我在315投诉网上看到有人遇到同样的情况,到最后找110协调,找南京媒体投诉,有的会稍有赔偿,用处并不是很大。 总之对这种奸商并没有什么好办法,主要是工商局,消协作用不大, 大家能选择的只有远离它们,尽力宣传,救得一个是一个~· PS:联想在南京珠江路还有几家专卖店,离得不远。相信也好不到哪里~~虽然联想牌子很大,但是他们笔记本电脑之类产品的口碑迟早要被这些经销商败坏的一干二净
AngularJS快速开始 Hello World! 开始学习AngularJS的一个好方法是创建经典应用程序“Hello World!”: 使用您喜爱的文本编辑器,创建一个HTML文件,例如:helloworld.html。 将下面的源代码复制到您的HTML文件。 在web浏览器中打开这个HTML文件。 源代码 <!doctype html><html ng-app> <head> <script src="http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Fcode.angularjs.org%2Fangular-1.0.1.min.js&urlrefer=81a57b05d01915e65edc614d2ec6d476"></script> </head> <body> Hello {{'World'}}! </body> </html> 请在您的浏览器中运行以上代码查看效果。 现在让我们仔细看看代码,看看到底怎么回事。 当加载该页时,标记ng-app告诉AngularJS处理整个HTML页并引导应用: <html ng-app> 这行载入AngularJS脚本: <script src="http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Fcode.angularjs.org%2Fangular-1.0.1.min.js&urlrefer=81a57b05d01915e65edc614d2ec6d476"></script> (想了解AngularJS处理整个HTML页的细节,请看Bootstrap。) 最后,标签中的正文是应用的模板,在UI中显示我们的问候语: Hello {{'World'}}! 注意,使用双大括号标记{{}}的内容是问候语中绑定的表达式,这个表达式是一个简单的字符串‘World’。 下面,让我们看一个更有趣的例子:使用AngularJS对我们的问候语文本绑定一个动态表达式。 Hello AngularJS World! 本示例演示AngularJS的双向数据绑定(bi-directional data binding): 编辑前面创建的helloworld.html文档。 将下面的源代码复制到您的HTML文件。 刷新浏览器窗口。 源代码 <!doctype html> <html ng-app> <head> <script src="http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Fcode.angularjs.org%2Fangular-1.0.1.min.js&urlrefer=81a57b05d01915e65edc614d2ec6d476"></script> </head> <body> Your name: <input type="text" ng-model="yourname" placeholder="World"> <hr> Hello {{yourname || 'World'}}! </body> </html> 请在您的浏览器中运行以上代码查看效果。 该示例有一下几点重要的注意事项: 文本输入指令<input ng-model="yourname" />绑定到一个叫yourname的模型变量。 双大括号标记将yourname模型变量添加到问候语文本。 你不需要为该应用另外注册一个事件侦听器或添加事件处理程序! 现在试着在输入框中键入您的名称,您键入的名称将立即更新显示在问候语中。 这就是AngularJS双向数据绑定的概念。 输入框的任何更改会立即反映到模型变量(一个方向),模型变量的任何更改都会立即反映到问候语文本中(另一方向)。 AngularJS应用的解析 本节描述AngularJS应用程序的三个组成部分,并解释它们如何映射到模型-视图-控制器设计模式: 模板(Templates) 模板是您用HTML和CSS编写的文件,展现应用的视图。 您可给HTML添加新的元素、属性标记,作为AngularJS编译器的指令。 AngularJS编译器是完全可扩展的,这意味着通过AngularJS您可以在HTML中构建您自己的HTML标记! 应用程序逻辑(Logic)和行为(Behavior) 应用程序逻辑和行为是您用JavaScript定义的控制器。AngularJS与标准AJAX应用程序不同,您不需要另外编写侦听器或DOM控制器,因为它们已经内置到AngularJS中了。这些功能使您的应用程序逻辑很容易编写、测试、维护和理解。 模型数据(Data) 模型是从AngularJS作用域对象的属性引申的。模型中的数据可能是Javascript对象、数组或基本类型,这都不重要,重要的是,他们都属于AngularJS作用域对象。 AngularJS通过作用域来保持数据模型与视图界面UI的双向同步。一旦模型状态发生改变,AngularJS会立即刷新反映在视图界面中,反之亦然。 此外,AngularJS还提供了一些非常有用的服务特性: 底层服务包括依赖注入,XHR、缓存、URL路由和浏览器抽象服务。 您还可以扩展和添加自己特定的应用服务。 这些服务可以让您非常方便的编写WEB应用。
JavaScript初学者最容易犯的错误(二) 对数组使用for…in语法 for…in 语句在w3cschool中的定义: “用于对数组或者对象的属性进行循环操作”。for ... in 循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作。 for…in 的语法: for (prop in obj){ //...do something to prop or obj[prop]} 这种语法看上去比普通的for循环简洁的多,但是在项目开发过程中,建议还是尽量不要使用for…in来对数组进行遍历操作。 因为在上述代码中,prop是作为对象的属性来定义的。虽然我们可以用obj[prop]取到数组中的每个元素,并且打印prop的话也是0 ,1,2,3…,但是这儿的prop与普通数组的下标并不一样,它并没有定义为一个整型,而是作为一个属性字符串,所以如果我们 将它当成一个整数来处理,有时候就会出现一些奇怪的错误。 看下面的代码: var arr = ["sdf","ss","dd","fd","we","as","fds","hj","tyu","nhg"]; var length = arr.length; for(index in arr) { if (index < length - 1) { arr[index] = arr[index + 1]; alert(arr[index]); } } 实现的功能很简单,就是将数组中所有的元素往前移一位,但是运行这段代码的时候会发现,alert打印出来的东东全是undefined 。就是因为index实际上是作为一个字符串在使用的,而“+”操作符对于字符串来说是连接操作,所以index+1的结果是“01”,“11” ,“21”…这种。然后用arr[index + 1]取值的时候便是取arr[“01”],自然是获取不到的。 除了上述情况外,还有就是Array在某些时候可能会被修改,比如在外部给它增加了一些属性,方法神马的,这样的话使用 for…in遍历会将增加的东东也遍历到,同样会出错。 所以建议在编码的时候,对数组遍历使用普通的for循环。尽量不要使用for…in来操作。
JavaScript初学者最容易犯的错误(一) this指针的错误理解 在使用JavaScript做面向对象编程的时候,很多有基本面向对象概念的新手都会在不经意间将this指针指向了错误的位置而不自知。如下所示: var Lily = function(id) { this.name = "lily"; $("body").click(function() { $("#" + id).text(this.name + " is here!"); });} 上面的代码使用jquery的一些函数,本来的目的是在页面上点击时会在初始化Lily实例时传入的的元素上显示“lily is here”的文本。 但是如果运行这段代码你就会发现点击页面后显示的name为undefined,为什么this.name变成了未定义的变量呢? 此处正是由于this指针指向的对象发生了变化。 在JavaScript中无论何时,函数里的this都是指向这个函数的调用者。所以当运行到onclick事件的时候,由于触发的函数是绑定给body的,所以此时的this是指向body这个对象的,而body中并没有定义name属性,就会显示undefined。 上面是一个绑定监听事件的情形。同样的错误还容易出现在对象中使用setTimeout,设置callback进行回调, 使用全局函数等地方。 在JavaScript使用prototype实现的继承体系中,this指针指向函数的调用者这一特性也是在基类中设计抽象方法的关键。比如用JavaScript实现一个模板模式,在当子类通过调用父类的接口使用到基类中的抽象方法时,调用者是子类,所以当执行到this.abstractMethod()时,如果子类中覆写了此方法有自己具体的实现,就会执行子类的方法。 对于这个容易出现的错误只要在写代码时注意到哪些方法是有对象自身调用的,哪些方法是由外部对象,或全局对象调用的就可以避免。 有时候遇到对象找不到,未定义,或取值出现不正常的情况也要检查一下是不是当前的this指针与你认为的大相径庭了!
对新手有用的JavaScript开发小建议 ----本文转自CSDN,作者薛梁 这篇文章将向你分享一些不为人知的但很有用的JavaScript小建议,对那些刚涉及使用JavaScript编程语言的初级开发者应该有很大的帮助。 1. 用数组长度截取数组 我们都知道,对象都是通过使用JavaScript引用的,但这并不是唯一的准则,请看下面的检验案例: [js] view plaincopy var arr1 = arr2 = [1, 2, 3]; //Change arr1 arr1 = [];// arr2 will still be [1,2,3] 最初,arr1和arr2都指向了数组[1,2,3],之后当arr1重新指向[ ]的时候,arr2的引用并没有发生什么变化,仍然指向[1,2,3]。但是如果我们想让arr1和arr2都指向[ ]的话,那应该怎么做呢?我们可以利用数组的长度属性。当设置arr1.length=0的时候,arr1里面的要素将被清空。而引用是不会改变的,所以arr1和arr2指向[ ]。 2. 用push来合并数组 我们通常使用concat()来合并两个数组,例如: [js] view plaincopy var arr1=[1,2,3]; var arr2=[4,5,6]; var arr3=arr1.concat(arr2); arr3; [1, 2, 3, 4, 5, 6] 我们同样可以利用push()来达到这种效果: [js] view plaincopy var arr1=[1,2,3]; var arr2=[4,5,6]; Array.prototype.push.apply(arr1,arr2); arr1 [1, 2, 3, 4, 5, 6] 应用这种方法可以把一个数组作为第二个参数,因此,arr2能够被推送到arr1里面。 3. 特征检测 在我们使用的很多API里,我们能看到一些特征检测语句,这些语句是用来检查浏览器是否支持特定的属性或方法,以便能够支持跨浏览器兼容性。可以这样做: [js] view plaincopy if(window.opera){ console.log("OPERA"); }else{ console.log("NOT OPERA"); } 这样的运作方式是正确的,但它的缺点是效率不高。这种类型的对象检测将在浏览器里初始化资源。更有效地方式是检查密钥是否在某一个对象里。 [js] view plaincopy if("opera" in window){ console.log("OPERA"); }else{ console.log("NOT OPERA"); } 4. 检查某一个对象是不是数组 在JavaScript编程语言里,我们可以使用typeof来检查变量的类型,typeof可以返回数字、布尔值、字符串、对象、函数和未定义的对象。事实上这里没有数组,typeof数组就是一个对象。所以我们怎么来决定一个对象就是一个数组呢?在ECMAScript 5编程语言里,我们可以使用 Array.isArray(obj)来检查这里所提到的问题。但是目前ECMAScript 5还没有得到广泛使用。 不过,我们可以使用下面的方法: [js] view plaincopy var obj=[]; Object.prototype.toString.call(obj)=="[object Array]"; true 原文:Pixels Tech
说方先生抄袭的人都错了 百度经验里有一条:“怎么伪原创?” 具体有以下几个方法: 段落重组法 这种方法就是到目前为止还有很多人在做的,就是把一篇文章的头部和尾部自己改一下,中间的颠倒一下文章的顺序。 同义词代替法 这种方法也是我刚刚接触这个行业的时候用的一种方法,就是文章一段一段的去改,把原文的一些词语改成与其相近的词语,比如什么导致什么的发生,变成什么造成什么的发生,原文的意思没有什么大的变化,但是对于百度来说就是一篇原创的文章,这种方法耗时比较长,但是相对第一种方法却强了很多。 多文章结合法 最高效也是质量最高的伪原创技巧。这种方法其实很简单,就是把你想要写的文章去百度或者谷歌搜集几篇,然后把他们的内容中和在一起。这里举个例子来帮助大家理解。比如你想写一篇祛斑的方法有哪些?你百度或者谷歌搜索“祛斑的方法有哪些”,找到2-3篇排名首页的文章,然后把找到的几篇文章的内容用自己的语言整合到一起组成一篇新的文章。实际上有点像百度百科的意思,这样的文章质量很高,而且花费的时间很短,熟练的话5分钟不到就可以完成一篇。 个人翻译法 这种方法,我是认为已经处于原创阶段的了,相比前面三种来说,我更支持大家使用这种方法。这种方法,就是寻找一些文章,然后用自己的文笔将他们的文章进行二次翻译,中间可以不翻译一部分,但是还是支持大家全篇翻译,这样虽然是伪原创,但是质量确实跟原创不相伯仲,所以这种文章的收录那是非常好的。缺点就是,耗费时间过长,一般需要10-20分钟。 问答结合法 这种,也有不少专业的SEO优化人员使用,就是在各大知道问答平台,找到比如“伪原创文章怎么写?”“伪原创文章”等问题的答案,进行汇编重组,让后就能产生一种问答相结合的文章,文章主题可以是一问一答,也可以是直接陈述,这种伪原创产生的文章质量也是非常高的,非常受广大SEO人员的喜爱。 软件产生法 这中方法,就是利用一些伪原创软件,进行文章伪原创,有不少懒惰的SEO优化人员喜欢用这种软件采集的文章,放入自己的网站,但是这个确定很明显,软件没有智慧,采集加工的文章错误率很高,所以文章价值很低,对于用户体验只有反作用。 注意事项 伪原创中,建议使用多文章结合法、个人翻译法、问答结合法,对于其他几种,因为原创度太低,对于网站的发展很不利。 伪原创永远是抄袭别人、修改别人的文章,所以等有能力的时候,最好原创,原创的文章才是王道,才能让你的网站做大做强。 伪原创,也要讲究格式、段落分布,好的布局,在第一眼视觉中非常重要,切忌文章不要冗余在一起! 怎么说方老师也是做过站长的人,怎么会抄袭呢?!!!
我是如何成功证明自己有代笔的-今何在 这是今何在发的第二篇博文,之前的一篇也包含在里面了。 --------------------------------------------------------------------------------- 之前写过一个贴子:《关于今何在有代笔的十大铁证》。是因为世上没有什么绝对之事,所以要绝对说韩寒一定没代笔,我也不敢,帮他辩驳时,有人一说:“韩寒自己都不敢说话,你凭什么帮他解释?”我就没法说下去了。我能确知的只有自己的事。那么能否用方舟子式的推证法“证明”一个并不存在的事实呢?我想试验一下。 结果《十大铁证》贴子一发,许多人惊呼:“如果这贴子不是你自己发的话,我会真相信你有代笔……”其实我还真没有伪造证据,那么,我究竟是如何能做到用事实来推证谬误的呢? 下面我就来实例教学一下…… 1、 今何在一直自称其笔名来自《滕王阁序》,但请问让他背一遍《滕王阁序》,他敢吗?他还有一次在现场活动把“槛外长江”的槛字给念错了,完全不学无术嘛!所以他根本就没看过《滕王阁序》!从笔名来说就不可能是他自己起的。铁证有没有? ——看起来很有道理?事实上这里面的误导手法在于:这里预先了一个前提:作者一定要熟悉自己曾提到的作品。这个前提是隐藏在文中的,若你不承认这个前提,这证明无法成立。但若你没多想便默认了这个前提,就立刻掉入陷阱。 2、 《悟空传》中有大量对禅宗佛法辩论的描写,但此作者压根就是个高中天天逃课打电动,最后本科都没有考上的大专生,一天家都没出过,完全没生活经历,也不可能有时间通读全部佛经,他从哪去知道那些连高僧都写不出的禅宗佛法的?不信让他现场去和少林寺方丈来辩一下机锋,他敢吗?不敢吧!铁证有没有? ——很有道理?事实上这里面的误导手法在于,只提了对证点有利的“作者逃课成绩差”的部分,却隐藏了作者看过禅宗相关书籍的事实。而且要写关于禅宗佛理的内容,和是否深读佛学毫无联系,因为人生道理是相通的,在生活中就可以思考。 3、 有一次有人签售现场问今何在《悟空传》这名字是什么意思?今何在说没啥意思,随手起的。可是他又曾经自称,悟空传这名字是有深意的,其实就是“领悟虚空的故事”云云。一个人怎么可能连自己说过的话都记不住呢?铁证有没有? ——确实有这样的事,事实上是两个回答都没错:《悟空传》的名字的确是即兴起的,但同时也的确有“领悟虚空的故事”的含义在里面,并不矛盾。因为作者会对自己反复回答的问题厌倦,所以有时候会随心情选择答案。 4、 曾经有人举报说真的悟空传作者其实是清华一大学生,在网上写了写十二回就跳楼死了,后来现在这人冒充他笔法续了后八回,也冒充了今何在。一去看悟空传,当年果然是写了十二回就断了,过了半个月才重新续上,而且后八回绝逼和前十二回风格不同,绝逼不是同一个人的手笔,铁证有没有? ——这就是拿小道消息加上主观判断当成客观证据,然后加上心理暗示的手法。前十二回和后八回的风格当然是一样的,但假如你被心理暗示,就会越看越不一样,然后便相信了……改成前八回和后十二回的效果是一样的。 5、 当年今何在写《悟空传》时才大学刚毕业,一个大学学行政管理的毕了业去网站工作的人怎么可能写出那样一个故事呢?而且之前查今何在在新浪发的东西,居然大部分是他自己网站的小广告啊!没有一篇好文章啊!这样一个人怎么可能突然写出《悟空传》来呢?世上事情一定有因果,不存在突然爆发变得有才华的人,所以一定有代笔,铁证有没有? ——世上的事的确有因果,所以正确答案是在那之前作者也曾创作过很多作品,一直在不断成长,但这段话中把这些事实隐藏,只给人“他写一篇就成功了”的暗示,也是误导的一种。 6、 今何在写完《悟空传》,还写了很多小说,但是就是不敢再续《悟空传》有没有?一个人怎么可能当年写的出《悟空传》,之后连写续集都不敢呢?他能写得出第一本,就该能写得出第二本,有本领让他续一次啊?如果不敢就绝逼有代笔,铁证有没有?
1 下一页