Bootstrap 5 Dropdowns Via data attributes allow you to add your own information to tags. The data-* attributes can be used to define our own custom data attributes. It is used to store custom data in private on the page or application. Using data attributes is a sub-topic of JavaScript behavior, so by using data attributes in the list group you can activate dropdowns without writing any JavaScript by simply specifying data-bs-toggle=” list” or on an element.
Bootstrap 5 Dropdowns Via data attributes Class: There is no pre-defined class for this data-bs-toggle attribute that plays the main role.
Bootstrap 5 Dropdowns Via data Attribute:
- data-bs-toggle: This attribute is used to describe what type of toggling will be done to the button to which it is attached.
Syntax:
<div class="dropdown"> <button id="dLabel" type="button" data-bs-toggle="dropdown" aria-expanded="false"> ... </button> <ul class="dropdown-menu" aria-labelledby="dLabel"> ... </ul> </div>
Example 1: The code below demonstrates how dropdown toggle can be triggered with a button and an anchor and enclosing both inside a button group.
<!doctype html> < html lang = "en" >
< head >
< link href =
rel = "stylesheet" integrity =
"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin = "anonymous" >
< script src =
integrity =
"sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin = "anonymous" >
</ script >
</ head >
< body >
< h1 class = "m-4 text-success" >GeeksforGeeks</ h1 >
< h4 class = "ms-4" >
Bootstrap 5 Dropdowns Via data attributes
</ h4 >
< div class = "container m-5" >
< div class = "btn-group" >
< div class = "btn-group" >
< button type = "button" class="btn btn-success
btn-lg dropdown-toggle"
data-bs-toggle = "dropdown" >
Dropdown with button
</ button >
< ul class = "dropdown-menu" >
< li >< a class = "dropdown-item" href = "#" >
Data Structures</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
Algorithms</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
Competitive Programming</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
Web Development</ a ></ li >
</ ul >
</ div >
< div class = "btn-group" >
< a href = "#" role = "button" class="btn btn-secondary
btn-lg dropdown-toggle"
data-bs-toggle = "dropdown" >
Dropdown with link
</ a >
< ul class = "dropdown-menu dropdown-menu-end" >
< li >< a class = "dropdown-item" href = "#" >
Java</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
C++</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
HTML</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
CSS</ a ></ li >
< li >< a class = "dropdown-item" href = "#" >
JS</ a ></ li >
</ ul >
</ div >
</ div >
</ div >
</ body >
</ html >
|
Output:
Example 2: The code below demonstrates how we can add this dropdown inside the navbar and adding Scrollspy to it.
<!doctype html> < html lang = "en" >
< head >
< link href =
rel = "stylesheet" integrity =
"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin = "anonymous" >
< script src =
integrity =
"sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin = "anonymous" >
</ script >
< script >
$(function(){
$('#work').on('activate.bs.scrollspy')
});
</ script >
< style >
body{
position: relative;
}
</ style >
</ head >
< body >
< h1 class = "m-4 text-success" >
GeeksforGeeks
</ h1 >
< h4 class = "ms-4" >
Bootstrap 5 Dropdowns Via data attributes
</ h4 >
< div class = "container" >
< nav id = "navbar-example2" class="navbar navbar-light
bg-light px-3 m-4">
< a class = "navbar-brand" href = "#" >Navbar</ a >
< div class = "dropdown" >
< button class = "btn btn-success dropdown-toggle"
type = "button" id = "dropdownMenuButton2"
data-bs-toggle = "dropdown"
aria-expanded = "false" >
Topics
</ button >
< ul class = "dropdown-menu dropdown-menu-dark"
aria-labelledby = "dropdownMenuButton2" >
< li class = "nav-item" >
< a class = "nav-link" href = "#scrollspyHeading1" >
DS</ a >
</ li >
< li class = "nav-item" >
< a class = "nav-link" href = "#scrollspyHeading2" >
Algorithms</ a >
</ li >
< li class = "nav-item" >
< a class = "nav-link" href = "#scrollspyHeading3" >
C++</ a >
</ li >
< li class = "nav-item" >
< a class = "nav-link" href = "#scrollspyHeading4" >
BootStrap 5</ a >
</ li >
</ ul >
</ div >
</ nav >
< div class = "container" data-bs-spy = "scroll"
data-bs-target = "#navbar-example2"
data-bs-offset = "0" class = "scrollspy-example"
tabindex = "0" >
< h4 id = "scrollspyHeading1" >Data Structures</ h4 >
< p >A data structure is a group of data elements that provides
the easiest way to store and perform different actions
on the data of the computer. A data structure is a particular
way of organizing data in a computer so
that it can be used effectively. The idea is to reduce the
space and time complexities of different tasks.
The choice of a good data structure makes it possible
to perform a variety of critical operations effectively.
An efficient data structure also uses minimum memory space
and execution time to process the structure.</ p >
< h4 id = "scrollspyHeading2" >Algorithms</ h4 >
< p >The word Algorithm means ” A set of finite rules or
instructions to be followed in calculations or other
problem-solving operations ” Or ” A procedure for solving
a mathematical problem in a finite number of steps that
frequently involves recursive operations”.It can be understood
by taking the example of cooking a new recipe.
To cook a new recipe, one reads the instructions
and steps and executes them one by one,
in the given sequence. The result thus obtained
is the new dish is cooked perfectly. Every time you
use your phone, computer, laptop, or calculator
you are using Algorithms. .</ p >
< h4 id = "scrollspyHeading3" >C++</ h4 >
< p >C++ is a general-purpose programming language
and is widely used nowadays for competitive programming.
It has imperative, object-oriented and generic
programming features. C++ runs on lots of platforms
like Windows, Linux, Unix, Mac etc.C++ is a general-purpose
programming language that was developed as an
enhancement of the C language to include
object-oriented paradigm. It is an imperative
and a compiled language.C++ is a middle-level
language rendering it the advantage of programming
low-level (drivers, kernels) and even higher-level
applications (games, GUI, desktop apps etc.).
The basic syntax and code structure of both
C and C++ are the same. </ p >
< h4 id = "scrollspyHeading4" >BootStrap 5</ h4 >
< p >Bootstrap is a free and open-source collection of
CSS and JavaScript/jQuery code used for creating
dynamic websites layout and web applications.
Bootstrap is one of the most popular front-end
frameworks which has really a nice set of
predefined CSS codes. Bootstrap uses different
types of classes to make responsive websites.
Bootstrap 5 was officially released on 16 June
2020 after several months of redefining its features.
Bootstrap is a framework that is suitable for
mobile-friendly web development. it means the
code and the template available on bootstrap
are applicable to various screen sizes.
It is responsive for every screen size. </ p >
</ div >
</ div >
</ body >
</ html >
|
Output:
Reference: https://getbootstrap.com/docs/5.0/components/dropdowns/#via-data-attributes