JSFiddle - React, Tailwind, and code Playground
HTML
<script src="http://api-maps.yandex.ru/2.1/?load=package.full,projection.Cartesian&lang=ru-RU"></script>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Reprehenderit voluptatibus natus atque fuga expedita in et maxime nisi omnis dolores similique fugiat voluptates accusamus dolorem sequi dicta recusandae nesciunt consequatur.
<div id="map" style="height: 1200px;"></div>
<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea earum laboriosam temporibus amet minima nihil magnam beatae natus a mollitia est alias officia excepturi hic id voluptate incidunt! Ut similique!</div>
<div>Impedit delectus facere eius hic cupiditate reprehenderit recusandae excepturi reiciendis deserunt quam voluptates expedita illum tempore repellendus numquam. Illum quibusdam optio ullam ratione sed quis blanditiis autem suscipit nesciunt cupiditate!</div>
<div>Dignissimos doloremque quae nihil et adipisci minima eius sit soluta repudiandae ut. Totam omnis aspernatur iste cum nesciunt beatae quia ad minus amet modi ratione officiis dicta suscipit eaque eos.</div>
<div>Deleniti et doloremque molestias eligendi fugiat facilis reprehenderit totam? Animi incidunt magni rerum iusto molestiae illo consectetur! Quibusdam nihil repellendus animi doloribus minima culpa a similique quis laborum magni debitis.</div>
<div>Cum voluptates sunt dicta mollitia nemo ab sequi consequatur qui doloremque dolorem esse dignissimos consectetur aut ad maiores vitae sed debitis pariatur consequuntur earum possimus corrupti aperiam odio ratione neque.</div>
<div>Quod ducimus sed autem voluptatum itaque accusantium incidunt quasi magni minima cupiditate eveniet a! Numquam eligendi laudantium reiciendis maiores id dolores distinctio excepturi ea qui sint sit eveniet nesciunt doloribus!</div>
<div>Officia nemo doloremque voluptatibus illum magni tenetur dolor alias eos esse debitis sint odio ipsum cumque! Explicabo laborum recusandae illum quam. Et natus aperiam accusamus repellendus...
JavaScript
ymaps.ready(init);
function init() {
var myMap = new ymaps.Map("map", {
center: [55.73, 37.75],
zoom: 10
});
var events = ['scrollZoom','drag','dblClickZoom','multiTouch'];
myMap.behaviors.disable(events);
var activeMapButton = new ymaps.control.Button({
data: {
content: "Акт. карту"
},
options: {
position: {
right: 10,
top: 450
},
maxWidth: [200]
}
});
activeMapButton.events.add('click', function (e) {
var target = e.get('target');
var text = 'Акт. карту';
if ( target.data.get('content') == text ) {
text = 'Деакт. карту';
myMap.behaviors.enable(events);
} else {
myMap.behaviors.disable(events);
}
target.data.set('content', text);
t = target;
});
myMap.controls.add(activeMapButton);
}