Heim Backend-Entwicklung PHP-Tutorial Nachdruck der modularen Javascript-Programmierung

Nachdruck der modularen Javascript-Programmierung

Aug 08, 2016 am 09:20 AM
function javascript jquery js require

Javascript Modular Programming

Autor: Ruan Yifeng Veröffentlichungszeit: 2013-01-08 18:04 Gelesen: 7632 Mal Empfehlung: 40 Originallink [Sammlung]

Da Websites nach und nach zu „Internetanwendungen“ werden, werden die in Webseiten eingebetteten Javascript-Codes immer größer und komplexer.

Webseiten ähneln immer mehr Desktop-Programmen und erfordern die Arbeitsteilung und Zusammenarbeit eines Teams, Fortschrittsmanagement, Unit-Tests usw. Entwickler müssen Software-Engineering-Methoden verwenden, um die Geschäftslogik des Webs zu verwalten Seiten.

Die modulare Javascript-Programmierung ist zu einem dringenden Bedarf geworden. Im Idealfall müssen Entwickler nur die Kerngeschäftslogik implementieren und andere Module können von anderen geladen werden.

Allerdings ist Javascript keine modulare Programmiersprache. Es unterstützt keine „Klassen“, geschweige denn „Module“. (Die sechste Ausgabe des ECMAScript-Standards, die derzeit formuliert wird, wird offiziell „Klassen“ und „Module“ unterstützen, aber es wird lange dauern, bis sie in die Praxis umgesetzt wird.)

Die Javascript-Community hat es geschafft Es werden viele Anstrengungen unternommen, um die vorhandene Umgebung zu verbessern und den Effekt eines „Moduls“ zu erzielen. Dieser Artikel fasst die aktuellen Best Practices der „Modularen Javascript-Programmierung“ zusammen und erklärt, wie man sie in die Praxis umsetzt. Obwohl es sich hierbei nicht um ein Einführungstutorial handelt, ist es verständlich, sofern Sie über grundlegende Kenntnisse der Javascript-Syntax verfügen.

1. Originalschrift

Ein Modul ist eine Reihe von Methoden zur Implementierung bestimmter Funktionen.

Solange verschiedene Funktionen (und Variablen, die den Status aufzeichnen) einfach zusammengefügt werden, wird daraus ein Modul.

function m1(){
  //...
}
function m2(){
  //...
} 
Nach dem Login kopieren

Die oben genannten Funktionen m1() und m2() bilden ein Modul. Wenn Sie es verwenden, rufen Sie es einfach direkt auf.

Die Nachteile dieses Ansatzes liegen auf der Hand: Er „verschmutzt“ globale Variablen, es gibt keine Garantie dafür, dass Variablennamen nicht mit anderen Modulen in Konflikt geraten, und es besteht keine direkte Beziehung zwischen Modulmitgliedern.

2. Objektschreiben

Um die oben genannten Mängel zu beheben, kann das Modul als Objekt geschrieben werden und alle Modulmitglieder werden in diesem Objekt platziert.

var module1 = new Object ({
  _count : 0,
  m1 : function (){
    //...
  },
  m2 : function (){
    //...
  }
}); 
Nach dem Login kopieren

Die oben genannten Funktionen m1() und m2() sind beide im Modul1-Objekt gekapselt. Bei Verwendung heißen die Eigenschaften dieses Objekts:

module1.m1(); 
Nach dem Login kopieren

Diese Schreibweise legt jedoch alle Modulmitglieder offen und der interne Status kann extern neu geschrieben werden. Beispielsweise kann externer Code den Wert eines internen Zählers direkt ändern.

module1._count = 5; 
Nach dem Login kopieren
Nach dem Login kopieren

3. So schreiben Sie eine sofort ausgeführte Funktion

Mit „Immediately-Invoked Function Expression, IIFE“ können Sie eine Offenlegung vermeiden private Mitglieder.

var module1 = (function(){
  var _count = 0;
  var m1 = function(){
    //...
  };
  var m2 = function(){
    //...
  };
  return {
  m1 : m1,
  m2 : m2
  };
})(); 
Nach dem Login kopieren

Mit der oben genannten Schreibmethode kann externer Code die interne Variable _count nicht lesen.

console.info (module1._count); //undefined
Nach dem Login kopieren

 module1 ist die grundlegende Schreibmethode des Javascript-Moduls. Als nächstes werden wir diese Schreibmethode verarbeiten.

4. Verstärkungsmodus

Wenn ein Modul sehr groß ist und in mehrere Teile aufgeteilt werden muss oder ein Modul ein anderes Modul erben muss, muss der „Erweiterungsmodus“ verwendet werden.

var module1 = (function (mod){
  mod.m3 = function () {
    //...
  };
  return mod;
})(module1); 
Nach dem Login kopieren

Der obige Code fügt eine neue Methode m3() zum Modul module1 hinzu und gibt dann das neue Modul module1 zurück.

5. Lose Erweiterungsmodus (Loose Erweiterung)

In der Browserumgebung wird normalerweise jeder Teil des Moduls aus dem Internet bezogen, und manchmal ist es unmöglich zu wissen, welcher Teil geladen wird Erste. Wenn die Schreibmethode im vorherigen Abschnitt übernommen wird, lädt der erste ausgeführte Teil möglicherweise ein nicht vorhandenes leeres Objekt. In diesem Fall muss der „Erweiterungsmodus“ verwendet werden.

var module1 = ( function (mod){
  //...
  return mod;
})(window.module1 {}); 
Nach dem Login kopieren

Im Vergleich zum „Vergrößerungsmodus“ bedeutet „Breiter Vergrößerungsmodus“, dass die Parameter der „Sofortausführungsfunktion“ leere Objekte sein können.

6. Globale Variablen eingeben

Unabhängigkeit ist ein wichtiges Merkmal des Moduls. Es ist am besten, nicht direkt mit anderen Teilen des Programms innerhalb des Moduls zu interagieren.

Um globale Variablen innerhalb eines Moduls aufzurufen, müssen andere Variablen explizit in das Modul eingetragen werden.

var module1 = (function ($, YAHOO) {
  //...
})(jQuery, YAHOO); 
Nach dem Login kopieren

Das obige Modul1-Modul muss die jQuery-Bibliothek und die YUI-Bibliothek verwenden, daher werden diese beiden Bibliotheken (eigentlich zwei Module) als Parameter in Modul1 eingegeben. Dadurch wird nicht nur die Unabhängigkeit der Module gewährleistet, sondern auch die Abhängigkeiten zwischen Modulen deutlich. Weitere Informationen zu diesem Thema finden Sie in Ben Cherrys berühmtem Artikel „JavaScript Module Pattern: In-Depth“.

7. Modulspezifikationen

Denken Sie zuerst darüber nach, warum Module wichtig sind.

Dank der Module können wir den Code anderer Leute bequemer verwenden und beliebige Module für alle gewünschten Funktionen laden.

Allerdings gibt es dafür eine Voraussetzung, das heißt, jeder muss das Modul gleich schreiben, sonst hast du deine Art zu schreiben, und ich habe meine Art zu schreiben, wäre das nicht eine Durcheinander! Dies ist umso wichtiger, wenn man bedenkt, dass es derzeit keine offizielle Spezifikation für Javascript-Module gibt.

  目前,通行的 Javascript 模块规范共有两种:CommonJS 和 AMD。我主要介绍 AMD,但是要先从 CommonJS 讲起。

八、CommonJS

  2009年,美国程序员 Ryan Dahl 创造了 node.js 项目,将 Javascript 语言用于服务器端编程。

  这标志"Javascript 模块化编程"正式诞生。因为老实说,在浏览器环境下,没有模块也不是特别大的问题,毕竟网页程序的复杂性有限;但是在服务器端,一定要有模块,与操作系统和其他应用程序互动,否则根本没法编程。

  node.js 的模块系统,就是参照 CommonJS 规范实现的。在 CommonJS 中,有一个全局性方法 require (),用于加载模块。假定有一个数学模块 math.js,就可以像下面这样加载。

var math = require ('math'); 
Nach dem Login kopieren

  然后,就可以调用模块提供的方法:

var math = require ('math');
math.add (2,3); // 5 
Nach dem Login kopieren

  因为这个系列主要针对浏览器编程,不涉及 node.js,所以对 CommonJS 就不多做介绍了。我们在这里只要知道,require () 用于加载模块就行了。

九、浏览器环境

  有了服务器端模块以后,很自然地,大家就想要客户端模块。而且最好两者能够兼容,一个模块不用修改,在服务器和浏览器都可以运行。

  但是,由于一个重大的局限,使得 CommonJS 规范不适用于浏览器环境。还是上一节的代码,如果在浏览器中运行,会有一个很大的问题,你能看出来吗?

var math = require ('math');
math.add (2, 3); 
Nach dem Login kopieren

  第二行 Math.add (2, 3),在第一行 require ('math') 之后运行,因此必须等 math.js 加载完成。也就是说,如果加载时间很长,整个应用就会停在那里等。

  这对服务器端不是一个问题,因为所有的模块都存放在本地硬盘,可以同步加载完成,等待时间就是硬盘的读取时间。但是,对于浏览器,这却是一个大问题,因为模块都放在服务器端,等待时间取决于网速的快慢,可能要等很长时间,浏览器处于"假死"状态。

  因此,浏览器端的模块,不能采用"同步加载"(synchronous),只能采用"异步加载"(asynchronous)。这就是 AMD 规范诞生的背景。

十、AMD

  AMD 是"Asynchronous Module Definition"的缩写,意思就是"异步模块定义"。它采用异步方式加载模块,模块的加载不影响它后面语句的运行。所有依赖这个模块的语句,都定义在一个回调函数中,等到加载完成之后,这个回调函数才会运行。

  AMD 也采用 require ()语句加载模块,但是不同于 CommonJS,它要求两个参数:

require ([module], callback); 
Nach dem Login kopieren

  第一个参数[module],是一个数组,里面的成员就是要加载的模块;第二个参数 callback,则是加载成功之后的回调函数。如果将前面的代码改写成 AMD 形式,就是下面这样:

require (['math'], function (math) {
    math.add (2, 3);
}); 
Nach dem Login kopieren

  math.add () 与 math 模块加载不是同步的,浏览器不会发生假死。所以很显然,AMD 比较适合浏览器环境。

  目前,主要有两个 Javascript 库实现了 AMD 规范:require.js 和 curl.js。本系列的第三部分,将通过介绍 require.js,进一步讲解 AMD 的用法,以及如何将模块化编程投入实战。

  我采用的是一个非常流行的库 require.js。

一、为什么要用 require.js?

  最早的时候,所有 Javascript 代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。下面的网页代码,相信很多人都见过。

<script src="1.js"></script>
<script src="2.js"></script>
<script src="3.js"></script>
<script src="4.js"></script>
<script src="5.js"></script>
<script src="6.js"></script>
Nach dem Login kopieren

  这段代码依次加载多个 js 文件。

  这样的写法有很大的缺点。首先,加载的时候,浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长;其次,由于 js 文件之间存在依赖关系,因此必须严格保证加载顺序(比如上例的1.js 要在2.js 的前面),依赖性最大的模块一定要放到最后加载,当依赖关系很复杂的时候,代码的编写和维护都会变得困难。

  require.js 的诞生,就是为了解决这两个问题:

(1)实现 js 文件的异步加载,避免网页失去响应;

(2)管理模块之间的依赖性,便于代码的编写和维护。

二、require.js 的加载

  使用 require.js 的第一步,是先去官方网站下载最新版本。

  下载后,假定把它放在 js 子目录下面,就可以加载了。

<script src="js/require.js"></script>
Nach dem Login kopieren

  有人可能会想到,加载这个文件,也可能造成网页失去响应。解决办法有两个,一个是把它放在网页底部加载,另一个是写成下面这样:

<script src="js/require.js" defer async="true" ></script>
Nach dem Login kopieren

  async 属性表明这个文件需要异步加载,避免网页失去响应。IE 不支持这个属性,只支持 defer,所以把 defer 也写上。

  加载 require.js 以后,下一步就要加载我们自己的代码了。假定我们自己的代码文件是 main.js,也放在 js 目录下面。那么,只需要写成下面这样就行了:

<script src="js/require.js" data-main="js/main"></script>
Nach dem Login kopieren

  data-main 属性的作用是,指定网页程序的主模块。在上例中,就是 js 目录下面的 main.js,这个文件会第一个被 require.js 加载。由于 require.js 默认的文件后缀名是 js,所以可以把 main.js 简写成 main。

三、主模块的写法

  上一节的 main.js,我把它称为"主模块",意思是整个网页的入口代码。它有点像C语言的 main ()函数,所有代码都从这儿开始运行。

  下面就来看,怎么写 main.js。

  如果我们的代码不依赖任何其他模块,那么可以直接写入 javascript 代码。

// main.js
alert ("加载成功!");
Nach dem Login kopieren

  但这样的话,就没必要使用 require.js 了。真正常见的情况是,主模块依赖于其他模块,这时就要使用 AMD 规范定义的的 require ()函数。

// main.js
require (['moduleA', 'moduleB', 'moduleC'], function (moduleA, moduleB, moduleC){
// some code here
});
Nach dem Login kopieren

  require () 函数接受两个参数。第一个参数是一个数组,表示所依赖的模块,上例就是['moduleA', 'moduleB', 'moduleC'],即主模块依赖这三个模块;第二个参数是一个回调函数,当前面指定的模块都加载成功后,它将被调用。加载的模块会以参数形式传入该函数,从而在回调函数内部就可以使用这些模块。

  require () 异步加载 moduleA,moduleB 和 moduleC,浏览器不会失去响应;它指定的回调函数,只有前面的模块都加载成功后,才会运行,解决了依赖性的问题。

  下面,我们看一个实际的例子。

  假定主模块依赖 jquery、underscore 和 backbone 这三个模块,main.js 就可以这样写:

require (['jquery', 'underscore', 'backbone'], function ($, _, Backbone){
// some code here
});
Nach dem Login kopieren

  require.js 会先加载 jQuery、underscore 和 backbone,然后再运行回调函数。主模块的代码就写在回调函数中。

四、模块的加载

  上一节最后的示例中,主模块的依赖模块是['jquery', 'underscore', 'backbone']。默认情况下,require.js 假定这三个模块与 main.js 在同一个目录,文件名分别为 jquery.js,underscore.js 和 backbone.js,然后自动加载。

  使用 require.config () 方法,我们可以对模块的加载行为进行自定义。require.config () 就写在主模块(main.js)的头部。参数就是一个对象,这个对象的 paths 属性指定各个模块的加载路径。

require.config ({
    paths: {
        "jquery": "jquery.min.js",
        "underscore": "underscore.min.js",
        "backbone": "backbone.min.js"
    }
});
Nach dem Login kopieren

  上面的代码给出了三个模块的文件名,路径默认与 main.js 在同一个目录(js 子目录)。如果这些模块在其他目录,比如 js/lib 目录,则有两种写法。一种是逐一指定路径。

require.config ({
    paths: {
        "jquery": "lib/jquery.min.js",
        "underscore": "lib/underscore.min.js",
        "backbone": "lib/backbone.min.js"
    }
}); 
Nach dem Login kopieren

  另一种则是直接改变基目录(baseUrl)。

require.config ({
    baseUrl: "js/lib",
    paths: {
        "jquery": "jquery.min.js",
        "underscore": "underscore.min.js",
        "backbone": "backbone.min.js"
    }
});
Nach dem Login kopieren

  如果某个模块在另一台主机上,也可以直接指定它的网址,比如:

require.config ({
    paths: {
        "jquery": "https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min"
    }
});
Nach dem Login kopieren

  require.js 要求,每个模块是一个单独的 js 文件。这样的话,如果加载多个模块,就会发出多次 HTTP 请求,会影响网页的加载速度。因此,require.js 提供了一个优化工具,当模块部署完毕以后,可以用这个工具将多个模块合并在一个文件中,减少 HTTP 请求数。

五、AMD 模块的写法

  require.js 加载的模块,采用 AMD 规范。也就是说,模块必须按照 AMD 的规定来写。

  具体来说,就是模块必须采用特定的 define () 函数来定义。如果一个模块不依赖其他模块,那么可以直接定义在 define () 函数之中。

  假定现在有一个 math.js 文件,它定义了一个 math 模块。那么,math.js 就要这样写:

// math.js
define(function () {
    var add = function (x, y) {
        return x + y;
    };
    return {
        add: add
    };
});
Nach dem Login kopieren

  加载方法如下:

// main.js
require(['math'], function (math) {
    alert(math.add(1, 1));
});
Nach dem Login kopieren

  如果这个模块还依赖其他模块,那么 define ()函数的第一个参数,必须是一个数组,指明该模块的依赖性。

define(['myLib'], function (myLib) {
    function foo() {
        myLib.doSomething();
    }
    return {
        foo: foo
    };
});
Nach dem Login kopieren

  当 require ()函数加载上面这个模块的时候,就会先加载 myLib.js 文件。

六、加载非规范的模块

  理论上,require.js 加载的模块,必须是按照 AMD 规范、用 define () 函数定义的模块。但是实际上,虽然已经有一部分流行的函数库(比如 jQuery)符合 AMD 规范,更多的库并不符合。那么,require.js 是否能够加载非规范的模块呢?

  回答是可以的。

  这样的模块在用 require () 加载之前,要先用 require.config ()方法,定义它们的一些特征。

  举例来说,underscore 和 backbone 这两个库,都没有采用 AMD 规范编写。如果要加载它们的话,必须先定义它们的特征。

require.config({
    shim: {
        'underscore': {
            exports: '_'
        },
        'backbone': {
            deps: ['underscore', 'jquery'],
            exports: 'Backbone'
        }
    }
});
Nach dem Login kopieren

  require.config () 接受一个配置对象,这个对象除了有前面说过的 paths 属性之外,还有一个 shim 属性,专门用来配置不兼容的模块。具体来说,每个模块要定义(1)exports 值(输出的变量名),表明这个模块外部调用时的名称;(2)deps 数组,表明该模块的依赖性。

  比如,jQuery 的插件可以这样定义:

shim: {
    'jquery.scroll': {
        deps: ['jquery'],
        exports: 'jQuery.fn.scroll'
    }
}
Nach dem Login kopieren

七、require.js 插件

  require.js 还提供一系列插件,实现一些特定的功能。

  domready 插件,可以让回调函数在页面 DOM 结构加载完成后再运行。

require(['domready!'], function (doc) {
    // called once the DOM is ready
});
Nach dem Login kopieren

  text 和 image 插件,则是允许 require.js 加载文本和图片文件。

define([
    'text!review.txt',
    'image!cat.jpg'
    ],
    function (review, cat) {
        console.log(review);
        document.body.appendChild(cat);
    }
);
Nach dem Login kopieren

  类似的插件还有 json 和 mdown,用于加载 json 文件和 markdown 文件。

以上就介绍了javascript模块化编程转载,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Empfohlen: Ausgezeichnetes JS-Open-Source-Projekt zur Gesichtserkennung und -erkennung Empfohlen: Ausgezeichnetes JS-Open-Source-Projekt zur Gesichtserkennung und -erkennung Apr 03, 2024 am 11:55 AM

Die Technologie zur Gesichtserkennung und -erkennung ist bereits eine relativ ausgereifte und weit verbreitete Technologie. Derzeit ist JS die am weitesten verbreitete Internetanwendungssprache. Die Implementierung der Gesichtserkennung und -erkennung im Web-Frontend hat im Vergleich zur Back-End-Gesichtserkennung Vor- und Nachteile. Zu den Vorteilen gehören die Reduzierung der Netzwerkinteraktion und die Echtzeiterkennung, was die Wartezeit des Benutzers erheblich verkürzt und das Benutzererlebnis verbessert. Die Nachteile sind: Es ist durch die Größe des Modells begrenzt und auch die Genauigkeit ist begrenzt. Wie implementiert man mit js die Gesichtserkennung im Web? Um die Gesichtserkennung im Web zu implementieren, müssen Sie mit verwandten Programmiersprachen und -technologien wie JavaScript, HTML, CSS, WebRTC usw. vertraut sein. Gleichzeitig müssen Sie auch relevante Technologien für Computer Vision und künstliche Intelligenz beherrschen. Dies ist aufgrund des Designs der Webseite erwähnenswert

Wie entferne ich das Höhenattribut eines Elements mit jQuery? Wie entferne ich das Höhenattribut eines Elements mit jQuery? Feb 28, 2024 am 08:39 AM

Wie entferne ich das Höhenattribut eines Elements mit jQuery? Bei der Front-End-Entwicklung müssen wir häufig die Höhenattribute von Elementen manipulieren. Manchmal müssen wir möglicherweise die Höhe eines Elements dynamisch ändern, und manchmal müssen wir das Höhenattribut eines Elements entfernen. In diesem Artikel wird erläutert, wie Sie mit jQuery das Höhenattribut eines Elements entfernen, und es werden spezifische Codebeispiele bereitgestellt. Bevor wir jQuery zum Betreiben des Höhenattributs verwenden, müssen wir zunächst das Höhenattribut in CSS verstehen. Das Höhenattribut wird verwendet, um die Höhe eines Elements festzulegen

Wie verwende ich die PUT-Anfragemethode in jQuery? Wie verwende ich die PUT-Anfragemethode in jQuery? Feb 28, 2024 pm 03:12 PM

Wie verwende ich die PUT-Anfragemethode in jQuery? In jQuery ähnelt die Methode zum Senden einer PUT-Anfrage dem Senden anderer Arten von Anfragen, Sie müssen jedoch auf einige Details und Parametereinstellungen achten. PUT-Anfragen werden normalerweise zum Aktualisieren von Ressourcen verwendet, beispielsweise zum Aktualisieren von Daten in einer Datenbank oder zum Aktualisieren von Dateien auf dem Server. Das Folgende ist ein spezifisches Codebeispiel, das die PUT-Anforderungsmethode in jQuery verwendet. Stellen Sie zunächst sicher, dass Sie die jQuery-Bibliotheksdatei einschließen. Anschließend können Sie eine PUT-Anfrage senden über: $.ajax({u

jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite Feb 28, 2024 pm 09:06 PM

Titel: jQuery-Tipps: Ändern Sie schnell den Text aller Tags auf der Seite. In der Webentwicklung müssen wir häufig Elemente auf der Seite ändern und bedienen. Wenn Sie jQuery verwenden, müssen Sie manchmal den Textinhalt aller a-Tags auf der Seite gleichzeitig ändern, was Zeit und Energie sparen kann. Im Folgenden wird erläutert, wie Sie mit jQuery den Text aller Tags auf der Seite schnell ändern können, und es werden spezifische Codebeispiele angegeben. Zuerst müssen wir die jQuery-Bibliotheksdatei einführen und sicherstellen, dass der folgende Code in die Seite eingefügt wird: &lt

Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern Feb 28, 2024 pm 05:42 PM

Titel: Verwenden Sie jQuery, um den Textinhalt aller Tags zu ändern. jQuery ist eine beliebte JavaScript-Bibliothek, die häufig zur Verarbeitung von DOM-Operationen verwendet wird. Bei der Webentwicklung müssen wir häufig den Textinhalt des Link-Tags (eines Tags) auf der Seite ändern. In diesem Artikel wird erläutert, wie Sie mit jQuery dieses Ziel erreichen, und es werden spezifische Codebeispiele bereitgestellt. Zuerst müssen wir die jQuery-Bibliothek in die Seite einführen. Fügen Sie den folgenden Code in die HTML-Datei ein:

Die Beziehung zwischen js und vue Die Beziehung zwischen js und vue Mar 11, 2024 pm 05:21 PM

Die Beziehung zwischen js und vue: 1. JS als Eckpfeiler der Webentwicklung; 2. Der Aufstieg von Vue.js als Front-End-Framework; 3. Die komplementäre Beziehung zwischen JS und Vue; Vue.

Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Feb 29, 2024 am 09:03 AM

Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Wenn Sie jQuery zum Betreiben von DOM-Elementen verwenden, stoßen Sie häufig auf Situationen, in denen Sie feststellen müssen, ob ein Element ein bestimmtes Attribut hat. In diesem Fall können wir diese Funktion einfach mit Hilfe der von jQuery bereitgestellten Methoden implementieren. Im Folgenden werden zwei häufig verwendete Methoden vorgestellt, um festzustellen, ob ein jQuery-Element über bestimmte Attribute verfügt, und um spezifische Codebeispiele anzuhängen. Methode 1: Verwenden Sie die Methode attr() und den Operator typeof //, um zu bestimmen, ob das Element ein bestimmtes Attribut hat

Die KI-Ära von JS ist da! Die KI-Ära von JS ist da! Apr 08, 2024 am 09:10 AM

Einführung in JS-Torch JS-Torch ist eine Deep-Learning-JavaScript-Bibliothek, deren Syntax PyTorch sehr ähnlich ist. Es enthält ein voll funktionsfähiges Tensorobjekt (kann mit verfolgten Farbverläufen verwendet werden), Deep-Learning-Ebenen und -Funktionen sowie eine automatische Differenzierungs-Engine. JS-Torch eignet sich für die Deep-Learning-Forschung in JavaScript und bietet viele praktische Tools und Funktionen zur Beschleunigung der Deep-Learning-Entwicklung. Image PyTorch ist ein Open-Source-Deep-Learning-Framework, das vom Meta-Forschungsteam entwickelt und gepflegt wird. Es bietet einen umfangreichen Satz an Tools und Bibliotheken zum Erstellen und Trainieren neuronaler Netzwerkmodelle. PyTorch ist einfach, flexibel und benutzerfreundlich konzipiert und verfügt über dynamische Berechnungsdiagrammfunktionen

See all articles