def toggle_class(selector, class1, class2=None): """ selector : str, selector css class1: str class2: str Toggle a class (on/off): toggle_class(selector,'class') ex : toggle_class('#London','marked') Toggle between two classes: toggle_class(selector, 'class1, class2') toggle_class(#London','w3-red','w3-green') """ element = doc.querySelectorAll(selector) if len(element): if class2 is None: for i in range(len(element)): if element[i].classList.contains(class1): element[i].classList.remove(class1) else: element[i].className += ' ' + class1 else: for i in range(len(element)): if element[i].classList.contains(class1): element[i].classList.remove(class1) element[i].className += ' ' + class2 else: if element[i].classList.contains(class2): element[i].classList.remove(class2) element[i].className += ' ' + class1
def search_div(): data_animation = doc.querySelectorAll('[data-animation]') if len(data_animation) != 0: for data in data_animation: if data.id: sheet(data.id, 'id', data.dataset.animation) elif data.className: list_className = data.className.split() sheet(list_className[0], 'class', data.dataset.animation) else: format_attribut = '{div}[data-animation*={anim}]'.format(div=data.localName, anim=data.dataset.animation) s = doc.querySelectorAll(format_attribut) for x in s: if x.className == '': x.className = "brython-animation" sheet(x.className, 'class', data.dataset.animation)
def show(selector): """ style display show selector : str css selector. ex: show('p'), show('h2'), show('#london') """ element = doc.querySelectorAll(selector) if element: for i in range(len(element)): element[i].style.display = "block"
def hide(selector): """ style display hide selector : str css selector. ex: hide('p'), hide('h2'), hide('#london') """ element = doc.querySelectorAll(selector) if element: for i in range(len(element)): element[i].style.display = "none"
def filter_html(ide, selector, id_input): """ Filter Lists to Search for a name in the input field. ide: str css style like #id01 selector: str tag div like li id input: str id like #id ex: filter('#id01', 'li', #input) trigger event: with brython: document['input'].bind('input', funct) """ element1 = doc.querySelectorAll(ide) element2 = doc.querySelectorAll(selector) inpu = doc[id_input] if element1: for i in range(len(element1)): for r in range(len(element2)): if element2[r].innerHTML.upper().find(inpu.value.upper()) != -1: element2[r].style.display = "" else: element2[r].style.display = "none"
def add_style(element, property, value): """ Add a CSS property value element :str selector css like #London, .London etc.. property: str property css like "background-color", color,display etc.. value: str value css like "red" for color property ex : add_style('#London','background-color','red') add_style('h2','background-color','red') add_style('.city','background-color','red') """ element = doc.querySelectorAll(element) if element: for i in range(len(element)): element[i].style[property] = value
def toggle_show(selector): """ Toggle Hide and Show Using Element selector: str css selector. ex: toggle_show('#London') for id toggle_show('h2') for div tag toggle_show('.city') for class """ element = doc.querySelectorAll(selector) if element: for i in range(len(element)): if element[i].style.display == "none": element[i].style.display = "block" else: element[i].style.display = "none"
def remove_class(selector, list_class): """ Remove a class or Remove multiple classes selector :str css style selector list_class:str class name or list class name remove_class(selector,'class') or remove_class(selector,'class1 class2...') remove_class('#London','marked') remove_class('#London','w3-panel w3-red') """ element = doc.querySelectorAll(selector, list_class) if element: liste = list_class.split() for i in range(len(element)): for r in range(len(liste)): if element[i].classList.contains(liste[r]): element[i].classList.remove(liste[r])
def add_class(selector, list_class): """ Add a class name to the div element selector : str css style selector list_class: str class name or list class name. add_class(selector,'class') or add_class(selector,'class1 class2...') ex: add_class('#London','marked') add_class('#London','w3-red w3-xlarge') """ element = doc.querySelectorAll(selector) if element: liste = list_class.split() for i in range(len(element)): for r in range(len(liste)): if element[i].classList.contains(liste[r]) is False: element[i].className += ' ' + liste[r]
def sort_html(ide, selector, sortvalue=None): """ Sort elements ide: str selector id like #ide selector: str css sortvalue: str css selector , None to default example :sort('#id01', 'li') example : sort_html('#myTable', '.item', 'td:nth-child(1)') """ bytt = '' element1 = doc.querySelectorAll(ide) for i in range(len(element1)): for j in range(2): cc = 0 y = 1 while y == 1: y = 0 b = doc[ide[1:]].querySelectorAll(selector) for x in range(len(b) - 1): bytt = 0 if sortvalue: v1 = b[x].querySelector( sortvalue).innerHTML.lower() v2 = b[x + 1].querySelector(sortvalue).innerHTML.lower() else: v1 = b[x].innerHTML.lower() v2 = b[x + 1].innerHTML.lower() if j == 0 and v1 > v2 or j == 1 and v1 < v2: bytt = 1 break if bytt == 1: b[x].parentNode.insertBefore(b[x + 1], b[x]) y = 1 cc += 1 if cc > 0: break
def previous(selector, milliseconde): Slide.current -= 1 if Slide.current < 1: Slide.current = len(doc.querySelectorAll(selector)) Slide.start(selector, milliseconde)
def next(selector, milliseconde): Slide.current += 1 if Slide.current > len(doc.querySelectorAll(selector)): Slide.current = 1 Slide.start(selector, milliseconde)
def displ(n, selector): Slide.style_elements(Slide.getElements(selector), "none") l = doc.querySelectorAll(selector) Slide.style_element(l[n - 1], "block")
def getElements(id): return doc.querySelectorAll(id)
celltype = feature.properties.celltype return CELLSTYLE[celltype] ZONE_SELECT_STYLE = {'weight': 2, 'fillOpacity': 0.05} # set up materialize css stuff DP_OPTS = { "setDefaultDate": True, "defaultDate": _jsdate_today, "maxDate": _jsdate_today, "format": "yyyy-mm-dd" } # materialize css init dp_elems = document.querySelectorAll('.datepicker') dp_instances = mcss.Datepicker.init(dp_elems, DP_OPTS) sel_elems = document.querySelectorAll('.select') sel_instances = mcss.FormSelect.init(sel_elems) lmap = leaflet.map("mapdisplay", { "preferCanvas": True, "doubleClickZoom": False, "editable": True }) marker_layer = leaflet.LayerGroup.new() marker_dated = {} viirs_layer = leaflet.LayerGroup.new()
main <= canvas main <= draw_button # Text input text_area = html.TEXTAREA() @text_area.bind("keydown") def print_keystrokes(event): print(text_area.value) main <= text_area # query selector all buttons = document.querySelectorAll('button') print(len(buttons)) # ajax main <= html.H2("BACON") bacon_div = html.DIV() main <= bacon_div def make_some_bacon(request): print(request.responseText) bacon_div.textContent = request.responseText req = ajax.ajax() req.open('GET', "https://baconipsum.com/api/?type=meat-and-filler", True)