Jeśli chodzi o dodawanie klas do elementów SVG, można to zrobić na dwa sposoby
Opublikowany: 2023-02-08Jeśli chodzi o dodawanie klas do elementów SVG, można to zrobić na dwa sposoby. Pierwszym i najbardziej oczywistym sposobem jest po prostu użycie atrybutu className: var mySvg = document.querySelector('#my-svg'); mySvg.className = 'moja-klasa'; To zadziała dobrze, jeśli masz do czynienia tylko z pojedynczą klasą, ale jeśli musisz dodać wiele klas , musisz użyć interfejsu API classList: var mySvg = document.querySelector('#my-svg'); mySvg.classList.add('moja-klasa'); mySvg.classList.add('inna-klasa'); Jeśli chcesz usunąć klasę, możesz użyć metody classList.remove(): mySvg.classList.remove('my-class'); I wreszcie, jeśli chcesz przełączyć klasę (tj. dodać ją, jeśli jej nie ma, lub usunąć, jeśli jest), możesz użyć metody classList.toggle(): mySvg.classList.toggle('my-class') ;
Document Object Model (DOM) może być używany do reprezentowania zarówno HTML, jak i SVG. W rezultacie manipulowanie nimi za pomocą JavaScript jest stosunkowo proste. W tej lekcji omówię, jak używać wbudowanego i zewnętrznego pliku SVG . GitHub udostępnia różne przykłady kodu, które można znaleźć na górze tej strony. Podczas tworzenia zewnętrznego pliku SVG przy użyciu tego samego kodu zawartość elementu może zostać wykorzystana w samym pliku SVG. Plik SVG nie może uzyskać dostępu do osadzonego w nim dokumentu HTML, a zatem nie może wyświetlić innych plików SVG na stronie. Jeśli opakujesz kod za pomocą CDATA, parsowanie XML uzna kod JS za część XML.
Tworzenie i usuwanie elementów to to samo, tylko w różnych miejscach. Używając metody createElementNS() odpowiedniego dokumentu, przekazujesz nazwę znacznika i przestrzeń nazw odpowiedniego dokumentu, aby utworzyć elementy. Aby usunąć element, musisz utworzyć osobny węzeł tekstowy za pomocą metody createTextNode(), a następnie dołączyć go do elementu. Ponieważ nie występują one w tym samym dokumencie, można ich używać w ten sposób.
Atrybut class przypisuje następujące nazwy klas do znacznika svg>: class, class i class. Podczas definiowania nazw klas użyj arkusza stylów lub elementu lokalnego z nazwą stylu. Style są tworzone przy użyciu klas, takich jak nazwy klas.
Jeśli chodzi o stylizację elementów, HTML obsługuje atrybuty „style” i „class” specyficzne dla elementu, a także atrybuty class i style HTML. Atrybut „class” przypisuje elementowi nazwę, która jest następnie używana do adresowania elementu w języku stylów. Atrybuty stylu są używane przez elementy do określania ich deklaracji CSS.
Właściwości i wartości kodu HTML są przechowywane we właściwości CSS i wartości SVG. Istnieje kilka przykładów, które są bardzo podobne do właściwości HTML.
Czy możesz umieścić klasę na Svg?
Możliwe jest umieszczenie klasy na svg, ale nie jest to zalecane, ponieważ może powodować problemy z niektórymi przeglądarkami.
Gdy dodasz przestrzeń nazw HTML do pliku SVG, możesz nadać elementom styl za pomocą CSS i załadować plik SVG za pomocą właściwości *obcy obiekt, co zmieni sposób jego wyświetlania.
Organizowanie projektu graficznego za pomocą Svgs
Pliki SVG mogą zawierać do trzech elementów oznaczonych jako „*svg”. Proces organizowania projektu graficznego w logiczne grupy jest również prosty.
Czy JavaScript można zastosować do SVG?
Ponieważ można je umieścić w kodzie HTML, naszymi obrazami SVG można manipulować za pomocą JavaScript. Możemy animować części obrazu z kodu, przekształcać go w interaktywne środowisko oparte na danych i generować grafikę na podstawie danych.
DRY to doskonały sposób na szybsze, bardziej niezawodne i mniej czasochłonne pisanie kodu. W IE nie jest konieczne poleganie na globalnym obiekcie zdarzenia. Ustaw swój obiekt zdarzenia na procedurę obsługi zdarzeń. Ponieważ zmienne x i y zostały zmodyfikowane, dalsze zmiany ich atrybutów nie są wymagane. Podane powyżej kody zdarzeń keydown i ASCII działają we wszystkich przeglądarkach, jeśli użyłem liczb nieparzystych i keydown zamiast naciśnięcia klawisza. AddEventListner() może służyć do dołączania procedur obsługi zdarzeń do elementu przy użyciu tylko atrybutów obsługi zdarzeń onfoo = * zamiast używania atrybutów onfoo= * do opisania tego, co powinno się wydarzyć. Funkcja zewnętrzna działa dopiero po załadowaniu strony, więc nie jest wymagane odwoływanie się do żadnych elementów.
Podsumowując, jest kilka rzeczy, o których należy pamiętać podczas tej demonstracji. Tag svg> służy do generowania obrazu SVG. W obrazie SVG używany jest znacznik. Znacznik svg znajduje się wewnątrz elementu body. Znacznik można znaleźć wewnątrz elementu. Identyfikator jest używany w odniesieniu do znacznika *svg>. Gdy istnieje znacznik, atrybut jest używany do odniesienia się do niego. Atrybut animacji w tagu svg> jest ustawiony na „łagodzenie”. Atrybut attributeeaseOut musi być ustawiony na to. Znacznik svg> ma atrybut width i height ustawiony na 100%, 100%. Poniższy kod utworzy obraz przy użyciu SVG i zdefiniuje atrybut animacji aseaseout. XML xmlns=” http://www.w3.org/2000/svg” width=100% height=100% id=demo-svg svg może być używany jako format. Możesz także wchodzić w interakcje z plikami SVG, klikając je myszą. Ta metoda jest realizowana przez utworzenie nowego elementu, wstawienie go do elementu body, a następnie pozostawienie go. Dodając poniższy kod do elementu, możesz zwiększyć czytelność pliku yoursvg. svg> może być używany jako podstawowy format. *użyj xlink:href Ta strona jest dostępna pod następującym adresem URL: */svg. W ten sposób będziesz mógł zrobić klikalny punkt na SVG. Dostęp do interfejsu użytkownika można uzyskać, klikając dwukrotnie punkt. Jakie są zastosowania interaktywności SVG? Różnorodne animacje mogą być interaktywne, a jednocześnie mogą być inicjowane przez użytkownika. Gdy użytkownik kliknie obraz SVG, generuje animację, która wydaje się być w czasie rzeczywistym. Trzecim sposobem, aby witryna wyglądała na interaktywną, jest użycie interaktywnej grafiki SVG , której można użyć do stworzenia iluzji interakcji w czasie rzeczywistym między użytkownikiem a witryną. Aby utworzyć interaktywny obraz SVG, najpierw użyj znacznika svg>. Następnie należy dołączyć plik *svg. W tym kroku należy określić atrybut animacjieaseOut. Twoja strona internetowa będzie wyglądać dokładnie tak samo, jak pokazano w wersji demonstracyjnej, jeśli wszystko jest ustawione poprawnie. Podczas oglądania tego demo należy pamiętać o kilku rzeczach. Aby rozpocząć, po tagu svg> musi nastąpić obraz. Drugim elementem do dodania jest tag HTML'svg' wewnątrz elementu body.
Dlaczego powinieneś używać Svg
Obrazy XML i wektorowe są używane w formacie SVG . Oznacza to, że można go zmieniać bez powodowania degradacji i nie jest on zależny od rozdzielczości. CSS i/lub JavaScript mogą być używane do łatwego manipulowania i animowania SVG. W rezultacie użycie SVG powoduje szybsze ładowanie strony (zamiast JPG, JPEG i PNG). JavaScript można dodać w dowolnym miejscu dokumentu SVG, między znacznikami otwierającymi i zamykającymi. Ogólnie zaleca się umieszczenie skryptu na końcu dokumentu, aby zapobiec blokowaniu i umożliwić mu pełny dostęp do DOM. Jeśli chcesz zapisać obrazy SVG bezpośrednio w dokumencie HTML, możesz to zrobić za pomocą *svg Kod, który otwiera obraz SVG w kodzie VS lub preferowanym IDE, kopiuje go i wkleja do elementu body kodu HTML wymagany jest dokument. Jeśli wszystko poszło gładko, poniższe demo powinno wyglądać tak samo.