Jump to content
Sign in to follow this  
Graham Quince

Navigation widget - menu in a page

Recommended Posts

Great widget @Simon Law but I don't think it works on iOS - at least I can't get it to work (desktop browsers all fine).

 

It is this bit that fails on iOS.....

'.nav-navigation-container li a {click}': function(el, ev) { 
	$menu = this.element.closest('.sites_core').find('.sites_menu');
	$menu.find('a[data-uuid='+el.attr('data-uuid')+']').click();
},

 

Safari on iOS inspector and Chrome inspector report slightly different objects if you console out $menu and $menu.find('a[data-uuid='+el.attr('data-uuid')+']'), so perhaps this is why?

I found that this fixed the issue...

'.nav-navigation-container li a {click}': function(el, ev) {
	$menu = this.element.closest('.sites_core').find('.sites_menu');
	$menu.trigger('sites.changeLocation', {
		uuid: el.attr('data-uuid')
	});
},

Is this 'safe' to use?

Paul

Edited by pconkie

Share this post


Link to post
Share on other sites
21 hours ago, pconkie said:

Great widget @Simon Law but I don't think it works on iOS - at least I can't get it to work (desktop browsers all fine).

 

It is this bit that fails on iOS.....


'.nav-navigation-container li a {click}': function(el, ev) { 
	$menu = this.element.closest('.sites_core').find('.sites_menu');
	$menu.find('a[data-uuid='+el.attr('data-uuid')+']').click();
},

 

Safari on iOS inspector and Chrome inspector report slightly different objects if you console out $menu and $menu.find('a[data-uuid='+el.attr('data-uuid')+']'), so perhaps this is why?

I found that this fixed the issue...


'.nav-navigation-container li a {click}': function(el, ev) {
	$menu = this.element.closest('.sites_core').find('.sites_menu');
	$menu.trigger('sites.changeLocation', {
		uuid: el.attr('data-uuid')
	});
},

Is this 'safe' to use?

Paul

 

22 hours ago, pconkie said:

$menu.trigger('sites.changeLocation', { uuid: el.attr('data-uuid') });

Hi Paul,

yes, that could be the way forward. the menu click event calls the 'sites.changeLocation' trigger, so we are just circumventing calling the menu tab..

  • Thanks 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Graham Quince
      When I posted the snippet to allow you to restyle of My Notes, I hadn't thought that it wasn't as straight forward to change the title of Phrase of the Day. This bit of CSS is the easiest way I've found of changing all Phrases of the Day, although if you combine it with the the technique(?) mentioned in the restyling My Notes, you can restyle individual widgets in the same way.
      <style> .widget_phrase-wrap .header { height:50px; overflow:hidden; } .widget_phrase-wrap .header h2::before { content: 'My own title \a'; white-space: pre; } </style>  
    • By Graham Quince
      Here's a new FrogCode widget:
      https://www.frogeducation.com/community/frogcode/frogcode-showcase/visitor-log
      We worked with George Bligh from Greenshaw on this widget.  When someone views a page with this widget on, it records their visit.  Anyone with Edit and Manage rights gets a button which displays a list of all visitors, their profile, their children (if a parent), how many times they have visited the site and the time and date of their last visit.

      (This widget uses the datastore - a little known about feature of Frog's API.)
    • By Phil Stiles
      Hi, I am trying to create a widget that is able to pull the Total Positive Behaviour Points into a variable, the end result is we will use an if statement to display a specific image depending on a number of points the student has.
      I have started by testing with the HTML widget. using the below code to see if I can use the behaviour.getBehaviourTotals API to get the total points this year for the user, however, it is not working.
      <script> var $ap,user; //Create a div, and give it a unique ID $ap = $("div", { id: Frog.Utilities.generateSimpleID() } ); $ap.html( '<b>Your House Points:</b>'+ '<table clase="table" id="your_points">'+ '<tr>'+ "<th>This Year</th>"+ '</tr>'+ '</table>' ); // Use Frog's API to get the logged in student user = FrogOS.getUser(); // Use Frog's API to get Behaviour points Frog.Model .api('behaviour.getBehaviourTotals',{ Student_uuid: user.uuid, }).done(function(behaviourResponse){ behaviourResponse.data.pos.year(function(work){ $ap.find('tbody') .append( '<tr>'+ '<td>'+ data.pos.year+ '</td>'+ '</tr>' ); }); }); arguments[0].append($ap); </script> any advice appreciated.
      Phil
    • By ann
      Hi
      Is there any way I can get a nested page to be centred on a page?
      I have created a number of pages with three equal columns - each one has an text widget containing an icon image linked to various places. Each of these 3 column pages are then nested onto one page.
      It looks fine on a PC as all three columns show across the page  but on a phone it justifies to the left.upsetting the design. 
       
      Thanks
      Ann

×
×
  • Create New...