Home

Awesome

leaflet-control-window

<div style="text-align:center" align="center"> <img src="http://mapshakers.github.io/projects/leaflet-control-window/leaflet-control-window.jpg" alt="leaflet-control-window"/> </div> Simple popup window plugin for leaflet. Ready for information, prompts, dialogs, photos etc.

The optional action button allows for multiple interaction with the same window as it hides the window instead of closing it.

*Requires Leaflet and modern browser

Features

Example

Check out demo and example of use!

Getting started

Using leaflet-control-window plugin is very easy and comfortable.

Quick usage

     <script src="...path-to-files.../L.Control.Window.js"></script>
     <link rel="stylesheet" href="...path-to-file.../L.Control.Window.css" />
// Creating window object
var win =  L.control.window(map,{title:'Hello world!',content:'This is my first control window.'})
           .show()

How to use

L.control.window( <Map> map ,<window options> options?)

There are two ways to set up control windows. It's up to you what you prefer. Following examples have the same results.

var winOpts = L.control.window(map,{title:'Heading!',content:'First paragraph.',visible: true})
var winMtds = L.control.window(map)
        .title('Heading!')
        .content('First paragraph.')
        .show()

Options

PropertyDescriptionDefault ValuePossible values
titleSets window title.nullString, empty string or false causes no title
contentSets window content.nullHTMLElement|String
modalModal|modeless window mode?falseBoolean
positionSets where to show window.'center''center', 'top', 'topRight', 'right', 'bottomRight', 'bottom', 'bottomLeft', 'left', 'topLeft'

Methods

MethodReturnsDescription
show()L.control.window objectRender window.
show(<String> position)L.control.window objectRender window on defined position.
title()HTMLElement|StringGets window title.
title(HTMLElement|String)L.control.window objectSets window title.
content()HTMLElement|StringGets window contet.
content(HTMLElement|String)L.control.window objectSets window content.
close()undefinedHide and remove window.
enableBtn()undefinedEnables the OK button of the window (default).
disableBtn()undefinedDisables the OK button of the window.

Other options

PropertyDescriptionDefault ValuePossible values
closeButtonRender close button?trueBoolean
classNameSets container class to style window.'control-window'String
maxWidthSets maximum width of window container in pixels.600Number
promptJSON object for prompt buttons.undefinedJSON {callback: ..., action: ..., buttonAction: ..., buttonOK: ..., buttonCancel: ...}
prompt.callbackFunction to run after OK button is clicked.undefinede.g. function(){alert('hello')}
prompt.actionFunction to run after ACTION button is clicked.undefinede.g. function(){alert('I\'ll do something')}
prompt.buttonActionText for Action button.button hidden by defaultString
prompt.buttonOKText for OK button.'OK'String
prompt.buttonCancelText for Cancel buttonbutton hidden by defaultString
visibleRender window immediately.falseBoolean

Other Methods

MethodReturnsDescription
showOn(<point> [x,y])L.control.window objectRender window on defined position in pixels ([x,y]).
hide()L.control.window objectHide window, can be rendered by .show() method.
prompt(JSON object)L.control.window objectSets prompt option.
setPromptCallback(<function>)L.control.window objectSets prompt option.

Events

EventDescription
showFired when window is shown.
hideFired when window is hidden.
closeFired when window is closed.

License

leaflet-control-window is free software, and may be redistributed under the MIT-LICENSE.