class CssCommand in Drupal 10
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Ajax/CssCommand.php \Drupal\Core\Ajax\CssCommand
- 9 core/lib/Drupal/Core/Ajax/CssCommand.php \Drupal\Core\Ajax\CssCommand
An AJAX command for calling the jQuery css() method.
The 'css' command will instruct the client to use the jQuery css() method to apply the CSS arguments to elements matched by the given selector.
This command is implemented by Drupal.AjaxCommands.prototype.css() defined in misc/ajax.js.
Hierarchy
- class \Drupal\Core\Ajax\CssCommand implements \Drupal\Core\Ajax\CommandInterface
Expanded class hierarchy of CssCommand
See also
http://docs.jquery.com/CSS/css#properties
Related topics
2 files declare their use of CssCommand
- AjaxCommandsTest.php in core/
tests/ Drupal/ Tests/ Core/ Ajax/ AjaxCommandsTest.php - ajax_forms_test.module in core/
modules/ system/ tests/ modules/ ajax_forms_test/ ajax_forms_test.module - Mock module for Ajax forms testing.
File
- core/
lib/ Drupal/ Core/ Ajax/ CssCommand.php, line 18
Namespace
Drupal\Core\AjaxView source
class CssCommand implements CommandInterface {
/**
* A CSS selector string.
*
* If the command is a response to a request from an #ajax form element then
* this value can be NULL.
*
* @var string
*/
protected $selector;
/**
* An array of property/value pairs to set in the CSS for the selector.
*
* @var array
*/
protected $css = [];
/**
* Constructs a CssCommand object.
*
* @param string $selector
* A CSS selector for elements to which the CSS will be applied.
* @param array $css
* An array of CSS property/value pairs to set.
*/
public function __construct($selector, array $css = []) {
$this->selector = $selector;
$this->css = $css;
}
/**
* Adds a property/value pair to the CSS to be added to this element.
*
* @param $property
* The CSS property to be changed.
* @param $value
* The new value of the CSS property.
*
* @return $this
*/
public function setProperty($property, $value) {
$this->css[$property] = $value;
return $this;
}
/**
* Implements Drupal\Core\Ajax\CommandInterface:render().
*/
public function render() {
return [
'command' => 'css',
'selector' => $this->selector,
'argument' => $this->css,
];
}
}