Sha256: 7d7730f8d930a8ea32e72b5627cfe2fe678d2e3f3e7fc971886e57ad18baa64e

Contents?: true

Size: 1.51 KB

Versions: 2

Compression:

Stored size: 1.51 KB

Contents

---
---

window.onload = function () {
    var sjs = SimpleJekyllSearch({
        searchInput: document.getElementById('searchbar'),
        resultsContainer: document.getElementById('search-results'),
        json: '{{ "/search.json" | relative_url }}',
        searchResultTemplate: '<a href="{url}" target="_blank">{title}</a>',
        noResultsText: ''
    });

    /* hack ios safari unfocus */
    if (/Safari/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent))
        document.body.firstElementChild.tabIndex = 1;

    var $labelGroup = document.querySelector(".posts-labelgroup");
    var $searchbar = document.getElementById("searchbar");
    var $postLabel = document.getElementById("posts-label");
    var $searchResults = document.querySelector(".search-results");
    var labelWidth = $postLabel.scrollWidth;
    $postLabel.style.width = labelWidth + "px";

    $labelGroup.addEventListener("click", function (e) {
        $searchResults.style.display = null;
        $postLabel.style.width = "0";
        $labelGroup.setAttribute("class", "posts-labelgroup focus-within");
        $searchbar.focus();
        e.stopPropagation();
    }, false);

    $labelGroup.addEventListener("mouseleave", function () {
        document.body.onclick = searchCollapse;
    });

    var searchCollapse = function (e) {
        $searchResults.style.display = "none";
        $labelGroup.setAttribute("class", "posts-labelgroup");
        $postLabel.style.width = labelWidth + "px";
        document.body.onclick = null;
    };
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
plainwhite-0.13 assets/js/search.js
plainwhite-0.12 assets/js/search.js