Input box takes full scr onclick or onchange











up vote
0
down vote

favorite












Hey I building a react app and I have a navigation bar which looks like this



import React, { Component} from 'react';
import NavImage from "../images/kickstarter.png";
import './navbar.css';

class Navbar extends Component {

render () {
return (
<nav className="navbar navbar-expand-lg navbar-light">
<div className="container">
<ul className="navbar-nav mr-auto">
<img src={NavImage} width="170" height="60" className="" alt="Kickstarter"/>
</ul>

<div className="collapse navbar-collapse" id="navbarSupportedContent">
<ul className="navbar-nav mr-auto">
</ul>
<form className="form-inline my-2 my-lg-0">
<input className="form-control mr-sm-2 cus-nav-input" type="search" placeholder="Search Project" aria-label="Search" />
</form>
</div>
</div>
</nav>
)
}
}


export default Navbar;


This looks something like this



enter image description here



Now, when user clicks on a search bar, I want it to occupy complete navbar, something similar to what product hunt have done



enter image description here



Question: Any idea how can I achieve it?










share|improve this question






















  • onFocusIn event on input type text you can add a class to input element or its parent element to make it look like you want and onFocusOut you can remove the class
    – Mohit Tilwani
    Nov 11 at 13:36















up vote
0
down vote

favorite












Hey I building a react app and I have a navigation bar which looks like this



import React, { Component} from 'react';
import NavImage from "../images/kickstarter.png";
import './navbar.css';

class Navbar extends Component {

render () {
return (
<nav className="navbar navbar-expand-lg navbar-light">
<div className="container">
<ul className="navbar-nav mr-auto">
<img src={NavImage} width="170" height="60" className="" alt="Kickstarter"/>
</ul>

<div className="collapse navbar-collapse" id="navbarSupportedContent">
<ul className="navbar-nav mr-auto">
</ul>
<form className="form-inline my-2 my-lg-0">
<input className="form-control mr-sm-2 cus-nav-input" type="search" placeholder="Search Project" aria-label="Search" />
</form>
</div>
</div>
</nav>
)
}
}


export default Navbar;


This looks something like this



enter image description here



Now, when user clicks on a search bar, I want it to occupy complete navbar, something similar to what product hunt have done



enter image description here



Question: Any idea how can I achieve it?










share|improve this question






















  • onFocusIn event on input type text you can add a class to input element or its parent element to make it look like you want and onFocusOut you can remove the class
    – Mohit Tilwani
    Nov 11 at 13:36













up vote
0
down vote

favorite









up vote
0
down vote

favorite











Hey I building a react app and I have a navigation bar which looks like this



import React, { Component} from 'react';
import NavImage from "../images/kickstarter.png";
import './navbar.css';

class Navbar extends Component {

render () {
return (
<nav className="navbar navbar-expand-lg navbar-light">
<div className="container">
<ul className="navbar-nav mr-auto">
<img src={NavImage} width="170" height="60" className="" alt="Kickstarter"/>
</ul>

<div className="collapse navbar-collapse" id="navbarSupportedContent">
<ul className="navbar-nav mr-auto">
</ul>
<form className="form-inline my-2 my-lg-0">
<input className="form-control mr-sm-2 cus-nav-input" type="search" placeholder="Search Project" aria-label="Search" />
</form>
</div>
</div>
</nav>
)
}
}


export default Navbar;


This looks something like this



enter image description here



Now, when user clicks on a search bar, I want it to occupy complete navbar, something similar to what product hunt have done



enter image description here



Question: Any idea how can I achieve it?










share|improve this question













Hey I building a react app and I have a navigation bar which looks like this



import React, { Component} from 'react';
import NavImage from "../images/kickstarter.png";
import './navbar.css';

class Navbar extends Component {

render () {
return (
<nav className="navbar navbar-expand-lg navbar-light">
<div className="container">
<ul className="navbar-nav mr-auto">
<img src={NavImage} width="170" height="60" className="" alt="Kickstarter"/>
</ul>

<div className="collapse navbar-collapse" id="navbarSupportedContent">
<ul className="navbar-nav mr-auto">
</ul>
<form className="form-inline my-2 my-lg-0">
<input className="form-control mr-sm-2 cus-nav-input" type="search" placeholder="Search Project" aria-label="Search" />
</form>
</div>
</div>
</nav>
)
}
}


export default Navbar;


This looks something like this



enter image description here



Now, when user clicks on a search bar, I want it to occupy complete navbar, something similar to what product hunt have done



enter image description here



Question: Any idea how can I achieve it?







javascript reactjs






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 11 at 13:19









KuchBhi

707220




707220












  • onFocusIn event on input type text you can add a class to input element or its parent element to make it look like you want and onFocusOut you can remove the class
    – Mohit Tilwani
    Nov 11 at 13:36


















  • onFocusIn event on input type text you can add a class to input element or its parent element to make it look like you want and onFocusOut you can remove the class
    – Mohit Tilwani
    Nov 11 at 13:36
















onFocusIn event on input type text you can add a class to input element or its parent element to make it look like you want and onFocusOut you can remove the class
– Mohit Tilwani
Nov 11 at 13:36




onFocusIn event on input type text you can add a class to input element or its parent element to make it look like you want and onFocusOut you can remove the class
– Mohit Tilwani
Nov 11 at 13:36












1 Answer
1






active

oldest

votes

















up vote
0
down vote













You could use a onclick function that sets the z-level of the search bar to 1 and sets the width to be equal to or a little smaller than the main nav-bar.



It’d look something like this



In the navbar input add:



onclick=“expandSearchBar()”


Then somewhere add the function:



function expandSearchBar() {
//get the id of the search bar and set css to what you need
}





share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53249135%2finput-box-takes-full-scr-onclick-or-onchange%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    You could use a onclick function that sets the z-level of the search bar to 1 and sets the width to be equal to or a little smaller than the main nav-bar.



    It’d look something like this



    In the navbar input add:



    onclick=“expandSearchBar()”


    Then somewhere add the function:



    function expandSearchBar() {
    //get the id of the search bar and set css to what you need
    }





    share|improve this answer

























      up vote
      0
      down vote













      You could use a onclick function that sets the z-level of the search bar to 1 and sets the width to be equal to or a little smaller than the main nav-bar.



      It’d look something like this



      In the navbar input add:



      onclick=“expandSearchBar()”


      Then somewhere add the function:



      function expandSearchBar() {
      //get the id of the search bar and set css to what you need
      }





      share|improve this answer























        up vote
        0
        down vote










        up vote
        0
        down vote









        You could use a onclick function that sets the z-level of the search bar to 1 and sets the width to be equal to or a little smaller than the main nav-bar.



        It’d look something like this



        In the navbar input add:



        onclick=“expandSearchBar()”


        Then somewhere add the function:



        function expandSearchBar() {
        //get the id of the search bar and set css to what you need
        }





        share|improve this answer












        You could use a onclick function that sets the z-level of the search bar to 1 and sets the width to be equal to or a little smaller than the main nav-bar.



        It’d look something like this



        In the navbar input add:



        onclick=“expandSearchBar()”


        Then somewhere add the function:



        function expandSearchBar() {
        //get the id of the search bar and set css to what you need
        }






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 11 at 13:36









        thecoolwinter

        85




        85






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53249135%2finput-box-takes-full-scr-onclick-or-onchange%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Full-time equivalent

            Bicuculline

            さくらももこ