Search Results

Search found 37817 results on 1513 pages for 'function signatures'.

Page 341/1513 | < Previous Page | 337 338 339 340 341 342 343 344 345 346 347 348  | Next Page >

  • Google Apps Script: how to make suggest box library to work?

    - by Pythonista's Apprentice
    I'm trying to add an autocomplete feature in my Google Spreadsheet using this Google Apps Script suggest box library from Romain Vialard and James Ferreira's book: function doGet() { // Get a list of all my Contacts var contacts = ContactsApp.getContacts(); var list = []; for(var i = 0; i < contacts.length; i++){ var emails = contacts[i].getEmails(); if(emails[0] != undefined){ list.push(emails[0].getAddress()); } } var app = UiApp.createApplication(); var suggestBox = SuggestBoxCreator.createSuggestBox(app, 'contactPicker', 200, list); app.add(suggestBox); return app; } function onEdit() { var s = SpreadsheetApp.getActiveSheet(); if( s.getName() == "my_sheet_name" ) { //checks that we're on the correct sheet var r = s.getActiveCell(); if( r.getColumn() == 1) { doGet(); } } } But when I start editing the column 1 of "my_sheet_name" nothing hapens (if I replace doGet() for other function, this other function runs Ok). I've already installed the Suggest Box library. So, why the doGet() function doesn't work?

    Read the article

  • Replacing special characters by null

    - by madheena
    Hi, Is there any function to replace the special characters by null in informatica if we used replacestr function, i think we should specify all special characters as follows replacestr(input,'!','~','@','#','$','%','^','&','*',null) But we dont know what are teh special characters will be coming as input. can u please let me know that which function will be suitable.

    Read the article

  • Highlight multiple rows using jQuery

    - by cf_PhillipSenn
    I'm putting together a succinct jQuery matrix because I'm having a hard time navigating around on the jQuery site, and the cheat sheets don't seem to provide me what I want either. Here's how I highlight the rows: $('.eq').hover(function() { $('.eq').toggleClass('highlight'); }); $('.is').hover(function() { $('.is').toggleClass('highlight'); }); Q: How can I write a function that says "toggle everything in the same class as what is being hovered over"? Something like: function toggle(that){ $(that.className).toggleClass('highlight'); }

    Read the article

  • Map wont show rigth in Joomla

    - by user1653126
    I have the following code of a map using api google, I have tested the code in several html editor and its work perfectly, but when i upload in my web page doesn’t work. The map appears all zoomed in some random point in the ocean. I create an article in Joomla 1.5.20, paste the code. Its shows right in the preview but not in the web page. I disable filtering and use none editor and still won’t work. Thanks for the help. <!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <style type="text/css"> html { height: 100% } body { height: 100%; margin: 0; padding: 0 } #map_canvas { height: 100% } </style> <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=AIzaSyBInlv7FuwtKGhzBP0oISDoB2Iu79HNrPU&sensor=false"> </script> <script type="text/javascript"> var map; // lets define some vars to make things easier later var kml = { a: { name: "Productor", url: "https://maps.google.hn/maps/ms?authuser=0&vps=2&hl=es&ie=UTF8&msa=0&output=kml&msid=200984447026903306654.0004c934a224eca7c3ad4" }, b: { name: "A&S", url: "https://maps.google.hn/maps/ms?ie=UTF8&authuser=0&msa=0&output=kml&msid=200984447026903306654.0004c94bac74cf2304c71" } // keep adding more if ye like }; // initialize our goo function initializeMap() { var options = { center: new google.maps.LatLng(13.324182,-87.080071), zoom: 9, mapTypeId: google.maps.MapTypeId.TERRAIN } map = new google.maps.Map(document.getElementById("map_canvas"), options); var ctaLayer = new google.maps.KmlLayer('https://maps.google.hn/maps/ms?authuser=0&vps=5&hl=es&ie=UTF8&oe=UTF8&msa=0&output=kml&msid=200984447026903306654.0004c94bc3bce6f638aa1'); ctaLayer.setMap(map); var ctaLayer = new google.maps.KmlLayer('https://maps.google.hn/maps/ms?authuser=0&vps=2&ie=UTF8&msa=0&output=kml&msid=200984447026903306654.0004c94ec7e838242b67d'); ctaLayer.setMap(map); createTogglers(); }; google.maps.event.addDomListener(window, 'load', initializeMap); // the important function... kml[id].xxxxx refers back to the top function toggleKML(checked, id) { if (checked) { var layer = new google.maps.KmlLayer(kml[id].url, { preserveViewport: true, suppressInfoWindows: true }); google.maps.event.addListener(layer, 'click', function(kmlEvent) { var text = kmlEvent.featureData.description; showInContentWindow(text); }); function showInContentWindow(text) { var sidediv = document.getElementById('content_window'); sidediv.innerHTML = text; } // store kml as obj kml[id].obj = layer; kml[id].obj.setMap(map); } else { kml[id].obj.setMap(null); delete kml[id].obj; } }; // create the controls dynamically because it's easier, really function createTogglers() { var html = "<form><ul>"; for (var prop in kml) { html += "<li id=\"selector-" + prop + "\"><input type='checkbox' id='" + prop + "'" + " onclick='highlight(this,\"selector-" + prop + "\"); toggleKML(this.checked, this.id)' \/>" + kml[prop].name + "<\/li>"; } html += "<li class='control'><a href='#' onclick='removeAll();return false;'>" + "Limpiar el Mapa<\/a><\/li>" + "<\/ul><\/form>"; document.getElementById("toggle_box").innerHTML = html; }; // easy way to remove all objects function removeAll() { for (var prop in kml) { if (kml[prop].obj) { kml[prop].obj.setMap(null); delete kml[prop].obj; } } }; // Append Class on Select function highlight(box, listitem) { var selected = 'selected'; var normal = 'normal'; document.getElementById(listitem).className = (box.checked ? selected: normal); }; </script> <style type="text/css"> .selected { font-weight: bold; } </style> </head> <body> <div id="map_canvas" style="width: 80%; height: 400px; float:left"></div> <div id="toggle_box" style="position: absolute; top: 100px; right: 640px; padding: 10px; background: #fff; z-index: 5; "></div> <div id="content_window" style="width:10%; height:10%; float:left"></div> </body> </html>

    Read the article

  • Is possible to initialize an object in javascript in this way?

    - by Kucebe
    I'd like to initialize an object in javascript calling directly a method that belongs to it: var obj = (function(){ return{ init: function(){ console.log("initialized!"); }, uninit: function(x){ console.log("uninitialized!"); } }; }).init(); //later obj.uninit(); obj.init(); This specific example doesn't work, is there something similar?

    Read the article

  • LAbeling with Percentage in R plot

    - by Libo Cannici
    Hi I have made this function that takes a table and prepare the label for a barplot prepare_labels <- function(ft){ labs <- ft labs <- paste(labs, "\n", sep="") labs <- paste(labs, round(prop.table(ft)*100,2), sep="") labs <- paste(labs, "%", sep="") return(labs) } It actually works fine, but is there any better way to write that function, the above code looks ugly and I want to write beautiful code :-) ex: ft <- table(mydata$phone_partner_products) prepare_labels(ft) [1] "3752\n34.09%" "226\n2.05%" "2907\n26.41%" "1404\n12.76%" "1653\n15.02%" [6] "1065\n9.68%"

    Read the article

  • Jquery Google Maps Problem

    - by Matias
    Here is the problem: Lets say a Jquery toggle button which loads a Google Map upon request and hides its later when toggled: $('#showmeMap').toggle(function() { var map = new GMap2($("#map").get(0)); var mapCenter = new GLatLng(-2, 20); map.setCenter(mapCenter, 12); $('#map').show(); } }, function() { $('#map').hide(); }); Then I add some random markers and later another function which removes markers from the map: $('#destroyMarkersButton').click(function() { for (var i=0; i<gmarkers.length; i++) { map.removeOverlay(gmarkers[i]); } }); When clicking on the button I´ve got the error Map is undefined. My thought was defining Google Map object globally: map = new GMap2($("#map").get(0)); Which works perfectly in Firefox, however, map fails to load on internet explorer!! Any suggestions ?

    Read the article

  • Pretty photo ibox doesn't trigger after appending new element in HTML

    - by user1469133
    I'm trying to get prettyPhoto or some other jquery plugin to work after I append new element to the HTML page: to be specific I have this: $(document).ready(function() { $(window).scroll(function() { if($(window).scroll) { $('div#loadMoreComments').show(); $.ajax({ type : "POST", url : "getvariables.php", dataType: "json", data : { webid: $(".posts:last").attr('id') } }).done(function( msg ) { jQuery.each(msg , function(index, value){ $("#posts").append(value); }); // $("#posts").append(msg); $('div#loadmore').hide(); }); } }); }); Then I have something like this that has to trigger the popup <p><a href="#inline-1" rel="ibox">Trigger popup.</a></p> <div id="inline-1" style="display: none;"> Content to show up after the link is triggered </div> Will appreciate any help over this. Thanks.

    Read the article

  • Jquery (non-gem) plugin won't work in my rails 3.2 app

    - by jfdimark
    I'm trying to equalize columns in my rails 3.2 app, and while there may be a better way to do it then my current attempt, after hours of trying to make it work I'd like to see if anyone can point out specifically why this jQuery plugin (which isn't a gem) is not working. I'm not getting any errors in the developer console, so it's hard to pin point. Here's the relevant code: The index view, where I've followed the plugin's instructions: div id="column-group"> <div class="equalize span5 offset1 UserProfile"> <% if user_signed_in? %> <h3>Hello <%= current_user.name %>!</h3> </div> <div class="equalize span5 MemberDisplay"> My application.js file, where I've also included the specific js code, so it would definitely be picked up by the application: //= require jquery //= require jquery_ujs //= require bootstrap //= require equalize_column_heights //= require_tree . $(document).ready(function() { $("#column-group").equalize_column_heights("equalize"); }); The jQuery plugin code, which is saved in my vendor/assets/javascripts folder: (function ($) { $.fn.equalize_column_heights = function (equalize_class) { var tallest_column=0; parent_id = "column-group" + $(this).attr("id") + " ." + equalize_class; $(parent_id).each(function(index, value) { if (tallest_column < $(this).height()){ tallest_column = $(this).height(); } }); $(parent_id).each(function(index, value) { $(this).css({'min-height': tallest_column}); }); } }(jQuery)); I've read all the rails guides documentation on the asset pipeline and all the relevant jQuery-rails3 questions on SO, but after several hours, I just can't seem to figure this one out. If anyone can point to other tutorials on how to get non-gem jQuery plugins to work in a Rails 3.2 app then I'd be glad to take a look!

    Read the article

  • simplemodal click events stopped working in IE7

    - by prettynerd
    Here's my code: $('#alertInfo').modal({ close :false, overlayId :'confirmModalOverlay', containerId :'confirmModalContainer', onShow : function(dialog) { dialog.data.find('.message').append(message); dialog.data.find('.yes').click(function(){ if ($.isFunction(callback)) callback.apply(); $.modal.close(); }); dialog.data.find('.close').click(function(){ $.modal.close(); }); } }); Basically, this is a dialogue box which I call to show a warning message that has a "X" button (with class 'close') and an "OK" button (with class 'yes'). The problem occurs in IE7. When I call this dialogue box and use my "X" button to close it everytime, my "X" button does not work anymore on the third time I call it (YES ON THE THIRD TIME!). However, if I use my "OK" button to close the dialogue box, it works fine no matter how many times I call it. I thought I found a workaround by unbinding and binding my click event of the '.close' class, as below: dialog.data.find('.close').unbind('click'); dialog.data.find('.close').bind('click',function(){$.modal.close();}); and it worked!!! unfortunately, however, the problem now occurs in my "OK" button. so, i did the same unbinding and binding the click event of the '.yes' class, as below: dialog.data.find('.yes').unbind('click'); dialog.data.find('.yes').bind('click', function() { if ($.isFunction(callback)) callback.apply(); $.modal.close(); }); BUT NOPE, IT DOES NOT WORK.. please help me.. @ericmmartin, i hope you're online now.. huhu..

    Read the article

  • How to hide anchor link with Jquery

    - by user545520
    Hello Everyone, I have anchor tag <a id="click" href="javascript:void(0);" onclick="disable();" style="">Clickme</a>. When html loads it showing clickme,when i click anchor link,it calls disable() function,In disable function i am trying to hide it using below code within the jquery success function: document.getElementById("click").style.display='none'; But page never hides that anchor link,Please let me know if i am doing anything wrong. Thanks in advance.

    Read the article

  • Javascript how to split newline

    - by oknoorap
    I'm use jquery, and I have a textarea, so when I submit button I will alert every text separate by newline. How to split from newline? var ks = $('#keywords').val().split("\n"); (function($){ $(document).ready(function(){ $('#data').submit(function(e){ e.preventDefault(); alert(ks[0]); $.each(ks, function(k){ alert(k); }); }); }); })(jQuery); example input : Hello There Result I want is : alert(Hello); and alert(There)

    Read the article

  • Excel: IF statement

    - by MHZ
    I am trying to write an excel if statement. I am new to using all the extra functionality Excel has. I am using a function called importXML(). I am trying to check whether a function I am using generates a "#VALUE!" error as follows: if( importXML(B1,C1)!="#VALUE!" //check if no error generated, importXML(B1,C1)//if no error is generated, use these cells in the function importXML(A1,C1)//else use these cells in the function ) Is this possible? Am I using excels if statement correctly to check for errors?

    Read the article

  • jquery selection with .not()

    - by Yako
    Hello, I have some troubles with jQuery. I have a set of Divs with .square classes. Only one of them is supposed to have an .active class. This .active class may be activated/de-activated onClick. Here is my code : jQuery().ready(function() { $(".square").not(".active").click(function() { //initialize $('.square').removeClass('active'); //activation $(this).addClass('active'); // some action here... }); $('.square.active').click(function() { $(this).removeClass('active'); }); }); My problem is that the first function si called, even if I click on an active .square, as if the selector was not working. In fact, this seems to be due to the addClass('active') line... Would you have an idea how to fix this ? Thanks

    Read the article

  • Error when using jquery webservice call to populate dropdownlist

    - by bugz
    For some reason when i tested parsing a json string to a dropdownlist it worked doing this var json = [{ "Id": "12345", "WorkUnitId": "SR0001954", "Description": "Test Service Request From Serena", "WorkUnitCategory": "ServiceRequest" }, { "Id": "12355", "WorkUnitId": "WOR001854", "Description": "Test Work Order From Serena", "WorkUnitCategory": "ServiceRequest" }, { "Id": "12365", "WorkUnitId": "DBR001274", "Description": "Test Database Related Service Request From Serena", "WorkUnitCategory": "ServiceRequest"}]; $(json).each(function() { comboboxWorkUnit.append($('<option>').val(this.Id).text(this.WorkUnitId)); }); However when i tryed taking the json from my webservice and placing it into the dropdownlist i get an error saying the dropdownlist doesnt support this metod. $.ajax({ type: "POST", url: "Services/WorkUnitService.asmx/WorkUnit", data: "{'Number' : '" + Number.text() + "','Id': '" + combobox.val() + "','workerType': '" + EmployeeType + "'}", contentType: "application/json; charset=utf-8", dataType: "json", success: function(json) { $(json).each(function() { comboboxWorkUnit.append($('<option>').val(this.Id).text(this.WorkUnitId)); }); } }); I also tried which called the webservice method but through an error $.postJSON("Services/WorkUnitService.asmx/WorkUnitsForParAndPhase", "{'parNumber' : '" + parNumber + "','phaseId': '" + combobox.val() + "','workerType': '" + EmployeeType + "'}", function(data) { alert(data.toString()); }); And i tryed this which never called the webservice $.getJSON('Services/WorkUnitService.asmx/WorkUnitsForParAndPhase' + parNumber + '/' + combobox.val() + '/' + EmployeeType, function(myData) { alert(myData.toString()); });

    Read the article

  • Jquery: Incrimentation for each set of elements in more than 1 div

    - by Jack
    I'm making a Jquery slideshow. It lists thumbnails, that when clicked on, reveal the large image as an overlay. To match up the thumbs with the large images I'm adding attributes to each thumbnail and large image. The attributes contain a number which matches each thumb to its corresponding large image. It works when one slideshow is present on a page. But I want it to work if more than one slideshow is present. Here's the code for adding attributes to thumbs and large images: thumbNo = 0; largeNo = 0; $(this + '.slideshow_content .thumbs img').each(function() { thumbNo++; $(this).attr('thumbimage', thumbNo); $(this).attr("title", "Enter image gallery"); }); $(this + '.slideshow_content .image_container .holder img').each(function() { largeNo++; $(this).addClass('largeImage' + largeNo); }); This works. To make the incrementation work when there are two slideshows on a page, I thought I could stick this code in an each function... $('.slideshow').each(function() { thumbNo = 0; largeNo = 0; $(this + '.slideshow_content .thumbs img').each(function() { thumbNo++; $(this).attr('thumbimage', thumbNo); $(this).attr("title", "Enter image gallery"); }); $(this + '.slideshow_content .image_container .holder img').each(function() { largeNo++; $(this).addClass('largeImage' + largeNo); }); }); The problem with this is that the incrimenting operator does not reset for the second slideshow div (.slideshow), so I end up with thumbs in the first .slideshow div being numbered 1,2,3 etc.. and thumbs in the second .slideshow div being numbered 4,5,6 etc. How do I make the numbers in the second .slideshow div reset and start from 1 again? This is really hard to explain concisely. I hope someone gets the gist.

    Read the article

  • HTML form never calls Javascript

    - by user1205577
    I have a set of radio buttons defined in HTML like so: <input type="radio" name="group" id="rad1" value="rad1" onClick="doStuff(this.id)">Option 1<br> <input type="radio" name="group" id="rad2" value="rad2" onClick="doStuff(this.id)">Option 2<br> Just before the </body> tag, I have the following JavaScript behavior defined: <script type="text/javascript"> /*<![CDATA[*/ function doStuff(var id){ alert("Doing stuff!"); } /*]]>*/ </script> When I run the program, the page loads as expected in my browser window and the radio buttons allow me to click them. The doStuff() function, however, is never called (I validated this using breakpoints as well). I also tried the following just to see if inline made the difference, but it seems the JavaScript is never called at all: <script type="text/javascript"> /*<![CDATA[*/ alert("JavaScript called!"); main(); function main(){ var group = document.getElementsByName('group'); for(var i=0; i<group.length; i++){ group[i].onclick = function(){ doStuff(this.id); }; } } /*]]>*/ </script> My question is, is there something special I need to do using HTML and JavaScript in this context? My question is not whether I should be using inline function calls or whether this is your favorite way to write code.

    Read the article

  • jQueryUI dialog width

    - by user35295
    Fiddle Full Screen Example I use jQuery dialog to open tables. Some of them have a large amount of text and they tend to be too long and go way off the screen. How can I make the dialog wider if the table is too long like the first one in the fiddle? I've tried width:'auto' but it seems to just occupy the entire screen. HTML: <button class='label'>Click</button><div class='dialog'><p><table>.....</table></div> <button class='label'>Click</button><div class='dialog'><p><table>.....</table></div> Javascript: $(document).ready(function(){ $('.label').each(function() { var dialogopen = $(this).next(".dialog"); dialogopen.dialog({width:'auto',autoOpen: false,modal: true, open: function(){ jQuery('.ui-widget-overlay').bind('click',function(){ dialogopen.dialog('close'); }) } }); $(this).click(function(){ dialogopen.dialog('open'); return false; } ); }); });

    Read the article

  • jquery "this" binding issue on event handler

    - by clyfe
    In jquery an event hadler's binding is the event generating DOM element (this points to the dom element). In prototype to change the binding of an event handler one can use the bindAsEventListener function; How can I access both the instance and the DOM element from a event handler? Similar to http://stackoverflow.com/questions/117361/how-can-i-bind-an-event-handler-to-an-instance-in-jquery function Car(){ this.km = 0; $("#sprint").click(this.drive); //setup event handler } // event handler // in it I need to access both the clicked element // and the binding object (instance of car) Car.prototype.drive = function(){ this.km += 10; // i'd like to access the binding (but jq changes it) this.css({ left: this.km }); // also the element // NOTE that is inside this function I want to access them not elsewhere } var car = new Car();

    Read the article

  • send datas to php with ajax - Internal Server Error(500)

    - by user1277467
    i try to send my datas to php with ajax but there's strange mistake. this is my ajax script, function deleteData2() { var artistIds = new Array(); $(".p16 input:checked").each(function(){ artistIds.push($(this).attr('id')); }); $.post('/json/crewonly/deleteDataAjax2', { json: JSON.stringify({'artistIds': artistIds}) }, function(response){ alert(response); }); } i think this works correctly but in php side, i face 500 internal server error(500). public function deleteDataAjax2() { $json = $_POST['json']; $data = json_decode($json); $artistIds = $data['artistIds']; $this->sendJSONResponse($artistIds); } Above code is my php. For example, when i try to send $data to ajax, i print my ids in json mode: However, when i try to send $artistIds to ajax side, i gives 500 error why?

    Read the article

  • TypeError: Object {...} has no method 'find' - when using mongoose with express

    - by sdouble
    I'm having trouble getting data from MongoDB using mongoose schemas with express. I first tested with just mongoose in a single file (mongoosetest.js) and it works fine. But when I start dividing it all up with express routes and config files, things start to break. I'm sure it's something simple, but I've spent the last 3 hours googling and trying to figure out what I'm doing wrong and can't find anything that matches my process enough to compare. mongoosetest.js (this works fine, but not for my application) var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/meanstack'); var db = mongoose.connection; var userSchema = mongoose.Schema({ name: String }, {collection: 'users'}); var User = mongoose.model('User', userSchema); User.find(function(err, users) { console.log(users); }); These files are where I'm having issues. I'm sure it's something silly, probably a direct result of using external files, exports, and requires. My server.js file just starts up and configures express. I also have a routing file and a db config file. routing file (allRoutes.js) var express = require('express'); var router = express.Router(); var db = require('../config/db'); var User = db.User(); // routes router.get('/user/list', function(req, res) { User.find(function(err, users) { console.log(users); }); }); // catch-all route router.get('*', function(req, res) { res.sendfile('./public/index.html'); }); module.exports = router; dbconfig file (db.js) var mongoose = require('mongoose'); var dbHost = 'localhost'; var dbName = 'meanstack'; var db = mongoose.createConnection(dbHost, dbName); var Schema = mongoose.Schema, ObjectId = Schema.ObjectId; db.once('open', function callback() { console.log('connected'); }); // schemas var User = new Schema({ name : String }, {collection: 'users'}); // models mongoose.model('User', User); var User = mongoose.model('User'); //exports module.exports.User = User; I receive the following error when I browse to localhost:3000/user/list TypeError: Object { _id: 5398bed35473f98c494168a3 } has no method 'find' at Object.module.exports [as handle] (C:\...\routes\allRoutes.js:8:8) at next_layer (C:\...\node_modules\express\lib\router\route.js:103:13) at Route.dispatch (C:\...\node_modules\express\lib\router\route.js:107:5) at C:\...\node_modules\express\lib\router\index.js:213:24 at Function.proto.process_params (C:\...\node_modules\express\lib\router\index.js:284:12) at next (C:\...\node_modules\express\lib\router\index.js:207:19) at Function.proto.handle (C:\...\node_modules\express\lib\router\index.js:154:3) at Layer.router (C:\...\node_modules\express\lib\router\index.js:24:12) at trim_prefix (C:\...\node_modules\express\lib\router\index.js:255:15) at C:\...\node_modules\express\lib\router\index.js:216:9 Like I said, it's probably something silly that I'm messing up with trying to organize my code since my single file (mongoosetest.js) works as expected. Thanks.

    Read the article

  • JQuery URL Validator

    - by Vincent
    All, I am trying to use JQuery's URL Validator plugin. http://docs.jquery.com/Plugins/Validation/Methods/url I have a text box that has a URL. I want to write a function which takes the textbox value, uses the jquery's validator plugin to validate urls and returns true or false. Something like Ex: function validateURL(textval) { // var valid = get jquery's validate plugin return value if(valid) { return true; } return false; } I wanted this to be a reusable function.. Thanks

    Read the article

  • jquery .blur for entire block of HTML

    - by Stacey
    I have an HTML item for a 'drop down menu', structured like this... <li class="ui-dropdown-list" > <a href="#">Right Drop Down Menu</a> <ul> <li><a href="#">Item</a></li> <li><a href="#">Item</a></li> <li><a href="#">Item</a></li> </ul> </li> Using jQuery to make this a dropdown list, with the following code. jQuery.fn.dropdown = function () { var defaults = { button: null, menu: null, visible: false }; var options = $.extend(defaults, options); return this.each(function () { options.button = $(this); options.menu = $(this).find("ul"); // when the parent is clicked, determine whether dropdown needs to occur options.button.click(function () { options.visible ? lift(options.menu) : drop(options.menu); options.visible = !options.visible; }); // drop the menu down so that it can be seen. function drop(e) { options.button.addClass("open"); options.menu.show(); } // lift the menu up, hiding it from view. function lift(e) { options.menu.hide(); options.button.removeClass('open'); } }); }; I am trying to wire it up so that if the user clicks anywhere outside of the menu, it will collapse it. This is proving much more difficult than I anticipated; even trying to use page level events. Any suggestions? The menu itself never really 'receives' focus, so using .blur doesn't seem to be suiting the purpose.

    Read the article

  • setTimeout is acting weird

    - by mnish
    I am trying to make a simple setTimeout, to make a div tag invisible after 2 seconds. The setTimeout function makes the div invisible but irregularly, sometimes immediately and sometimes after 1 sec, and so on. Here is my code: function beginTimeOut(){ t = setTimeout(function(){hideSubMenu()},2000); } function hideSubMenu(){ var elem; elem = document.getElementById("ul_navlist1"); elem.style.visibility="hidden"; clearTimeout(t); } By the way, t is a global variable. I have tried this too: t = setTimeout("hideSubMenu()",2000); but with the same irregular results.

    Read the article

< Previous Page | 337 338 339 340 341 342 343 344 345 346 347 348  | Next Page >