Hallo Community,
ich benötige mal einen Rat von euch. Mir ist der Unterschied zwischen ID und CLASS im HTML Markup bekannt. Folgende Situation:
Ich habe eigenständige Module (MVC) geschrieben, die per PHP Injection in meinen Seiten laufen. Jedes Modul bzw. der View hat einen Wrapper wie folgt
Nun gibt es Formularfelder oder auch Buttons, die ich derzeit über die ID in meinem JS Code anspreche. Aktuell habe ich den Fall, daß Buttons für Kommentarfelder in einer Schleife ausgegeben werden. Diese Buttons haben somit keine ID, sondern nur eine CLASS und Daten-Attribute, welche ich in meinem JS Code für den Selektor nutze:
Nun spiele ich mit der Idee, in meinen Modulen keine IDs (bis auf den Wrapper) zu verwenden und stattdessen nur mit Klassen zu arbeiten. Der HTML Code wäre etwas sauberer (spare mir ein PHP echo für ID-postfix) und die Arbeitsweise um eine Klasse per JS (JQuery) anzusprechen wäre konsistenter/einfacher:
Damit würde ich immer die richtige Klasse innerhalb eines Moduls ansprechen. Natürlich wären die Klassen Unique, sofern nicht als Schleife inkl. Daten-Attribut ausgegeben.
Eigentlich wiederspricht meine Denkweise dem Nutzen von IDs, da diese ja für den Unique Fall geschaffen wurden.
Dennoch finde ich die Lesbarkeit des Codes sehr viel einfacher.
Wie seht ihr den Fall?
Sollte ich mir das aus dem Kopf schlagen, oder wäre der Ansatz in Ordnung?
ich benötige mal einen Rat von euch. Mir ist der Unterschied zwischen ID und CLASS im HTML Markup bekannt. Folgende Situation:
Ich habe eigenständige Module (MVC) geschrieben, die per PHP Injection in meinen Seiten laufen. Jedes Modul bzw. der View hat einen Wrapper wie folgt
PHP-Code:
<div id="<?php echo $this->app_configuration["html_id"]; ?>" class="<?php echo $this->app_configuration["html_class"]; ?> app-text--default">
//
</div>
PHP-Code:
<button class="app-list-item-video-comment__button-votes-positive app-button app-button--default app-button--style-transparent" data-video-comment-alias="<?php echo $video_comment["alias"]; ?>" title="">
<div class="app-button__icon">
<i class="ri-thumb-up-line"></i>
</div>
<div class="app-button__number">
<div class="app-button__number-votes-positive">
<?php echo $video_comment["votes_positive"]; ?>
</div>
</div>
</button>
PHP-Code:
$('#<?php echo $this->app_configuration["html_id"]; ?> .app-list-item-video-comment__button-votes-positive').click(function() {
// do something
}
$('#<?php echo $this->app_configuration["html_id"]; ?> .app-list-item-video-comment__button-votes-negative').click(function() {
// do something
}
Eigentlich wiederspricht meine Denkweise dem Nutzen von IDs, da diese ja für den Unique Fall geschaffen wurden.
Dennoch finde ich die Lesbarkeit des Codes sehr viel einfacher.
Wie seht ihr den Fall?
Sollte ich mir das aus dem Kopf schlagen, oder wäre der Ansatz in Ordnung?
Kommentar