jQuery UI API - Button-Widget

Kategorie

小部件

Nutzung

Beschreibung:Anpassbare Buttons und Button-Sets.

添加版本:1.8

Das Button-Widget erweitert die Funktionalität von Standard-Formularelementen wie Buttons, Eingabefeldern und Ankern, um sie mit passenden Hover- und Aktiv-Stilen zu versehen.

Zusätzlich zu einfachen Buttons können auch Radio-Buttons und Checkboxen (input types radio und checkbox) in Buttons umgewandelt werden. Das zugehörige Label wird als Button gestaltet, und ein Klick darauf aktualisiert das zugrunde liegende Eingabefeld. Damit dies ordnungsgemäß funktioniert, benötigt das Eingabefeld einidAttribut, und es muss auf das des Labels verweisenforAttribut. Platzieren Sie das input nicht innerhalb des Labels, andernfalls wird esBarrierefreiheitsprobleme verursachen。

Um Radio-Buttons zu gruppieren, bietet Button außerdem ein zusätzliches Widget namens Buttonset. Buttonset wird verwendet, indem man ein Container-Element (das die Radio-Buttons enthält) auswählt und aufruft.buttonset(). Buttonset bietet außerdem eine visuelle Gruppierung, sodass es in Betracht gezogen werden kann, wann immer eine Gruppe von Buttons vorhanden ist. Es wählt alle Nachfahren aus und wendet.button(). Sie können ein Buttonset aktivieren und deaktivieren, wodurch alle enthaltenen Buttons aktiviert und deaktiviert werden. Das Zerstören eines Buttonsets ruft bei jedem Button dessendestroyMethode auf. Für gruppierte Radio-Buttons und Checkbox-Buttons wird empfohlen, einlegendvonfieldsetum eine barrierefreie Gruppenbeschriftung bereitzustellen.

Wenn ein input vom Typ button, submit oder reset verwendet wird, werden nur reine Textbeschriftungen ohne Icons unterstützt.

主题

Das Button-Widget verwendet dasjQuery UI CSS Framework, um das Styling für sein Erscheinungsbild festzulegen. Wenn Sie buttonspezifische Stile verwenden müssen, können Sie die folgenden CSS-Klassennamen verwenden:

  • ui-button: Repräsentiert das DOM-Element des Buttons. Diesem Element wird eine der folgenden Klassen zugewiesen, basierend auf dertext- undicons-Option:ui-button-text-only、ui-button-icon-only、ui-button-icons-only、ui-button-text-icons。
    • ui-button-icon-primary: Das Element, das verwendet wird, um das primäre Icon des Buttons anzuzeigen. Es wird nur gerendert, wenn das primäre Icon in dericons-Option bereitgestellt wird.
    • ui-button-text: Der Container, der den Textinhalt des Buttons umgibt.
    • ui-button-icon-secondary: Wird verwendet, um das sekundäre Symbol der Schaltfläche anzuzeigen. Es wird nur gerendert, wenn das sekundäre Symbol in dericonsOption angegeben ist.
  • ui-buttonset: Der äußere Container des Buttonset.

Abhängigkeiten

Zusätzliche Hinweise

  • Dieses Widget benötigt etwas funktionales CSS, andernfalls funktioniert es nicht. Wenn Sie ein benutzerdefiniertes Theme erstellen, verwenden Sie die widgetspezifische CSS-Datei als Ausgangspunkt.

Schnellnavigation

Optionen Methoden Ereignisse

Optionen Type Beschreibung Standard
disabled Boolean Wenn festgelegt auftrue, ist die Schaltfläche deaktiviert.

Codebeispiele:

Initialisiert die Schaltfläche mit der angegebenendisabledoption:

$( ".selector" ).button({ disabled: true });
    

Nach der Initialisierung abrufen oder festlegendisabledoption:

// getter
var disabled = $( ".selector" ).button( "option", "disabled" );
 
// setter
$( ".selector" ).button( "option", "disabled", true );
    
false
icons Objekt Anzuzeigende Symbole, einschließlich Symbole mit Text und Symbole ohne Text (siehe dietextOption). Standardmäßig wird das primäre Symbol links vom Beschriftungstext angezeigt und das sekundäre Symbol rechts. Die Anzeigeposition kann über CSS gesteuert werden.

primaryundsecondaryDer Attributwert muss einIcon-Klassennamesein, zum Beispiel"ui-icon-gear". Wenn nur ein Symbol verwendet wird, dannicons: { primary: "ui-icon-locked" }. Wenn zwei Symbole verwendet werden, dannicons: { primary: "ui-icon-gear", secondary: "ui-icon-triangle-1-s" }。

Codebeispiele:

Initialisiert die Schaltfläche mit der angegebeneniconsoption:

$( ".selector" ).button({ icons: { primary: "ui-icon-gear", secondary: "ui-icon-triangle-1-s" } });
    

Nach der Initialisierung abrufen oder festlegendisabledoption:

// getter
var icons = $( ".selector" ).button( "option", "icons" );
 
// setter
$( ".selector" ).button( "option", "icons", { primary: "ui-icon-gear", secondary: "ui-icon-triangle-1-s" } );
    
{ primary: null, secondary: null }
label String Der in der Schaltfläche anzuzeigende Text. Wenn nicht angegeben (null), wird der HTML-Inhalt des Elements verwendet, oder wenn das Element ein Eingabeelement vom Typ submit oder reset ist, seinvalueAttribut verwendet wird, oder wenn das Element ein input-Element vom Typ radio oder checkbox ist, wird der HTML-Inhalt des zugehörigen label-Elements verwendet.

Codebeispiele:

Initialisiert die Schaltfläche mit der angegebenenlabeloption:

$( ".selector" ).button({ label: "custom label" });
    

Nach der Initialisierung abrufen oder festlegenlabeloption:

// getter
var label = $( ".selector" ).button( "option", "label" );
 
// setter
$( ".selector" ).button( "option", "label", "custom label" );
    
null
text Boolean Ob das Label angezeigt werden soll. Wenn auffalse, wird der Text nicht angezeigt, aber dieiconsOption muss aktiviert sein, andernfalls wird dietextOption ignoriert.

Codebeispiele:

Initialisiert die Schaltfläche mit der angegebenentextoption:

$( ".selector" ).button({ text: false });
    

Nach der Initialisierung abrufen oder festlegentextoption:

// getter
var text = $( ".selector" ).button( "option", "text" );
 
// setter
$( ".selector" ).button( "option", "text", false );
    
wahr

Methoden Gibt zurück Beschreibung
destroy() jQuery (nur Plugin) Entfernt die Button-Funktionalität vollständig. Dadurch wird das Element in seinen Zustand vor der Initialisierung zurückversetzt.
  • Diese Methode akzeptiert keine Argumente.

Codebeispiele:

Rufen Sie die destroy-Methode auf:

$( ".selector" ).button( "destroy" );
    
disable() jQuery (nur Plugin) Deaktiviert den Button.
  • Diese Methode akzeptiert keine Argumente.

Codebeispiele:

Rufen Sie die disable-Methode auf:

$( ".selector" ).button( "disable" );
    
enable() jQuery (nur Plugin) Aktiviert den Button.
  • Diese Methode akzeptiert keine Argumente.

Codebeispiele:

Rufen Sie die enable-Methode auf:

$( ".selector" ).button( "enable" );
    
option( optionName ) Objekt Ruft den Wert ab, der derzeit dem angegebenen zugeordnet istoptionNameOption.
  • optionName
    Typ: String
    Beschreibung: Der Name der Option, die abgerufen werden soll.

Codebeispiele:

Methode aufrufen:

var isDisabled = $( ".selector" ).button( "option", "disabled" );
    
option() PlainObject Ruft ein Objekt ab, das Schlüssel/Wert-Paare enthält, die den aktuellen Options-Hash des Buttons darstellen.
  • Diese Methode akzeptiert keine Argumente.

Codebeispiele:

Methode aufrufen:

var options = $( ".selector" ).button( "option" );
    
option( optionName, value ) jQuery (nur Plugin) Legt den Wert der Button-Option fest, die mit dem angegebenenoptionNameOption.
  • optionName
    Typ: String
    Beschreibung: Der Name der Option, die festgelegt werden soll.
  • value
    Typ: Object
    Beschreibung: Der Wert, der für die Option festgelegt werden soll.

Codebeispiele:

Methode aufrufen:

$( ".selector" ).button( "option", "disabled", true );
    
option( options ) jQuery (nur Plugin) Legt eine oder mehrere Optionen für den Button fest.
  • options
    Typ: Object
    Beschreibung: Die Options-Wert-Paare, die festgelegt werden sollen.

Codebeispiele:

Methode aufrufen:

$( ".selector" ).button( "option", { disabled: true } );
    
refresh() jQuery (nur Plugin) Aktualisiert den visuellen Zustand des Buttons. Wird verwendet, um den Button-Zustand zu aktualisieren, nachdem der Auswahlzustand oder der deaktivierte Zustand des nativen Elements programmgesteuert geändert wurde.
  • Diese Methode akzeptiert keine Argumente.

Codebeispiele:

Rufen Sie die refresh-Methode auf:

$( ".selector" ).button( "refresh" );
    
widget() jQuery Gibt ein jQuery-Objekt zurück, das diejQuerySchaltfläche enthält.
  • Diese Methode akzeptiert keine Argumente.

Codebeispiele:

Die widget-Methode aufrufen:

var widget = $( ".selector" ).button( "widget" );
    

Ereignisse Type Beschreibung
create( event, ui ) buttoncreate Wird ausgelöst, wenn eine Schaltfläche erstellt wird.
  • event
    Typ: Event
  • ui
    Typ: Object

Hinweis:uiDas Objekt ist leer und wird hier aus Gründen der Konsistenz mit anderen Ereignissen aufgeführt.

Codebeispiele:

Initialisieren Sie die Schaltfläche mit dem angegebenen create-Callback:

$( ".selector" ).button({
  create: function( event, ui ) {}
});
    

Binden Sie einen Event-Listener an das buttoncreate-Ereignis:

$( ".selector" ).on( "buttoncreate", function( event, ui ) {} );
    

Beispiele

Beispiel 1:

Ein einfacher jQuery UI Button.

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>按钮部件(Button Widget)演示</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
</head>
<body>
 
<button>按钮标签</button>
 
<script>
$( "button" ).button();
</script>
 
</body>
</html>

Beispiel 2:

Ein einfaches jQuery UI Buttonset.

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>按钮部件(Button Widget)演示</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
</head>
<body>
 
<form>
  <fieldset>
    <legend>最喜欢的 jQuery 项目</legend>
    <div id="radio">
      <input type="radio" id="sizzle" name="project">
      <label for="sizzle">Sizzle</label>
 
      <input type="radio" id="qunit" name="project" checked="checked">
      <label for="qunit">QUnit</label>
 
      <input type="radio" id="color" name="project">
      <label for="color">Color</label>
    </div>
  </fieldset>
</form>
 
<script>
$( "#radio" ).buttonset();
</script>
 
</body>
</html>

Weitere Erweiterungen