site stats

Microsoft extends Cordova mobile dev to Visual Studo Code editor

<!–Microsoft extends Cordova Mobile dev to Visual Studo Code editor Instruments extension gives new tips on how to construct, debug, and preview apps with Visual Studio Code</h2> </section> <div class="modal eml-friend-wrapper" id="emailModal"> <div class="eml-ty eml-friend-success"> <i class="ss-icon ss-delete" /></p> <h3>Thanks</h3> <p class="msg-sent">Your message has been sent.</p> </p></div> <div class="eml-friend-error"> <i class="ss-icon ss-delete" /></p> <h3>Sorry</h3> <p class="msg-sent">There was once an error emailing this page.</p> </p></div> </div> <section class="bodee"> <p>$(‘#” + slotName + “‘).responsiveAd(screenSize:’971 1115’, scriptTags: []);”;<br /> var adDivString = “</p> <p>” + adString + “</p> <p>“;</p> <p> placementDiff = applyInsert($(this), adDivString);<br /> if (debug)<br /> console.log(“Just positioned an Advert and the placementDiff is: ” + placementDiff);</p> <p> placementTarget = cumulativeHeight + placementDiff + interModuleHeight + adHeightBuffer;</p> <p> else<br /> var moduleDivString = “”;<br /> var elementId = “drr-mod-“+moduleCounter;<br /> moduleDivString = “”;<br /> modules.push(elementId);</p> <p> placementDiff = applyInsert($(this), moduleDivString);<br /> if (debug)<br /> console.log(“Simply placed a module and the placementDiff is: ” + placementDiff);</p> <p> placementTarget = cumulativeHeight + placementDiff + interModuleHeight + moduleHeightBuffer;<br /> moduleCounter++;</p> <p> loopCounter++;</p> <p> // Keep Away From inserting Components too soon as a result of non-Massive figures inflating the cumulative Height<br /> if ($(this).is(“Figure”) && !$(this).is(“Determine.Massive”))<br /> cumulativeHeight += grafHeight;</p> <p> else<br /> cumulativeHeight += $(this).Height() + grafHeight;</p> <p> );</p> <p> // clone Related Tales module to come in after eighth para in article physique for Cell breakpoint display<br /> var $relatedStories = $(‘.Associated-promo-wrapper’);<br /> if ($relatedStories.length)<br /> var $relatedStoriesClone = $relatedStories.clone();<br /> $relatedStoriesClone.insertAfter( “#drr-container > p:eq(7)”); </p> <p> // For Cell only, Position Ad after 2d paragraph.<br /> if (firstMobileAdHtml)<br /> $(firstMobileAdHtml).insertAfter(“#drr-container > p:eq(1)”);</p> <p> var $insiderPromo = $(‘.insider-promo-wrapper’);<br /> if ($insiderPromo.size)<br /> var $insiderPromoClone = $insiderPromo.clone();<br /> $insiderPromoClone.insertAfter( “#drr-container > p:eq(1)”);</p> <p> //Position left aspect Element<br /> cumulativeHeight = 0;<br /> var leftPlacementTarget = tagHeight = leftPlacementTarget)<br /> if (debug)<br /> console.log(“congratulations… we’ve handed the initial Begin point”);</p> <p> if (leftPlacementIndex == null)<br /> //it can be No Longer excellent enough to Not be a left Steer Clear Of – it also isn’t a </p> <p> with an instantly preceding small or medium image left Avoid.<br /> if (!isLeftAvoid($(this)) && noPrevFigures($(this)) )<br /> leftPlacementIndex = $(this).index();<br /> $leftPlacementElement = $(this);<br /> leftPlacementLookaheadStart = cumulativeHeight;<br /> if (debug)<br /> console.log(“shouldn’t be a left Avoid and no prev figures. ########## set placementIndex (“+leftPlacementIndex+”) and lookaheadStart (“+leftPlacementLookaheadStart+”) ##########”);</p> <p> else<br /> if (debug)<br /> console.log(“is a left Keep Away From or has previous figures. continue”);</p> <p> else<br /> if (debug)<br /> console.log(“#### leftPlacementIndex already set to “+leftPlacementIndex+”. looking AHEAD…”);</p> <p> //Now Not null; has been set<br /> if ((cumulativeHeight – leftPlacementLookaheadStart) > leftIntervalHeight)<br /> if (debug)<br /> console.log(“###### THRESHOLD REACHED. LOOKAHEAD COMPLETE. End ###### (cumulativeHeight – leftPlacementLookaheadStart) (“+(cumulativeHeight-leftPlacementLookaheadStart)+”) > leftIntervalHeight (“+leftIntervalHeight+”).”);</p> <p> return false;<br /> else<br /> if (debug)<br /> );</p> <p> if (leftPlacementIndex != null && elementNotNearEnd($leftPlacementElement, leftPixelWindow))<br /> if (debug)<br /> console.log(” insert into index “+leftPlacementIndex);</p> <p> $(“#drr-container”).kids().eq(leftPlacementIndex).sooner than(“</p> <p>“);</p> <p> IDG.GPT.trackOmniture();</p> <p> // Add Proper rail module content<br /> for (var i=Zero; i” + adString + “</section> </article> </section> </div> <p>“;</p> <p> operate getEpoParams() </p> <p> /**<br /> * @param jqo Authentic jquery object Goal<br /> * @param divString The div to be inserted.<br /> * @return Distinction in Peak between Unique placement Goal and ultimate Goal.<br /> * Checks first 6 Elements for an allowable placement (600 pixel window).<br /> * If none, Check nearby for Elements that aren’t Proper avoids.<br /> * If none, Place Element prior to present Target.<br /> */<br /> operate applyInsert(jqo, divString)<br /> if (debug)<br /> console.log(“applyInsert at top and jqo index is: ” + jqo.index());</p> <p> for (var i=Zero; i 0)<br /> children = $(“#drr-container”).youngsters().slice(jqo.index(), allowElement.index() );</p> <p> else<br /> children = $(“#drr-container”).kids().slice(allowElement.index(), jqo.index());</p> <p> if (kids != null)<br /> kids.EACH AND EVERY(perform(i)<br /> if (debug)<br /> console.log(“About so as to add this Element’s Top to heigh diff offset”);<br /> console.log($(this));</p> <p> Top += $(this).Height() + grafHeight;<br /> );</p> <p> if (offset 300)<br /> if (debug)<br /> console.log(“isRightAvoid: discovered pre. return genuine”);</p> <p> return actual;</p> <p> if (“Determine”) && jqo.hasClass(‘Large’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered Determine.Large return proper”);</p> <p> return proper;</p> <p> if (“Figure”) && jqo.hasClass(‘medium’) && jqo.hasClass(‘inline’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered Determine has Type medium and inline.”);</p> <p> return real;</p> <p> if (‘div’) && jqo.hasClass(‘Desk-wrapper’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered div with Classification Table-wrapper”);</p> <p> return authentic;</p> <p> if (‘aside’))<br /> if (jqo.hasClass(‘sidebar’) && !jqo.hasClass(‘medium’))<br /> if (debug)<br /> console.log(“isRightAvoid: found apart with Type sidebar, with out Category medium”);</p> <p> return real;</p> <p> if (jqo.hasClass(‘statsTable’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered apart with Classification statsTable”);</p> <p> return true;</p> <p> if (jqo.hasClass(‘download-asset’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered Class download-asset return actual”);</p> <p> return true;</p> <p> if (jqo.hasClass(‘tableLarge’))<br /> if (debug)<br /> console.log(“isRightAvoid: found Class tableLarge return authentic”);</p> <p> return authentic;</p> <p> if (jqo.hasClass(‘reject’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered Class reject. return real”);</p> <p> return real;</p> <p> if (‘Table’) && jqo.hasClass(‘scorecard’))<br /> if (debug)<br /> console.log(“isRightAvoid: discovered div with Classification scorecard”);</p> <p> return genuine;</p> <p> return false;</p> <p> // Return real if Component has Type ‘reject’: will not Location drr modules/ads next to these Elements<br /> operate isRightReject(jqo)<br /> console.log(“in isRightReject”);<br /> if (jqo != null)<br /> if (jqo.hasClass(“reject”))<br /> if (debug)<br /> console.log(“isRightReject: discovered ‘reject’ Class”);</p> <p> return real;</p> <p> return false;</p> <p> return false;</p> <p> // Returns actual if Peak of all Elements after this one is more than 500; false otherwise<br /> operate elementNotNearEnd(Element, pixelWindow)<br /> if (pixelWindow == null)<br /> pixelWindow = 500;</p> <p> if (Component == null)<br /> return false;</p> <p> var remainingHeight = 0;<br /> var kids = $(“#drr-container”).children().slice(Component.index());<br /> if (kids == null)<br /> return false;</p> <p> kids.EVERY(function(i)<br /> remainingHeight += $(this).Height();<br /> );<br /> if ( remainingHeight > pixelWindow)<br /> return authentic;</p> <p> else<br /> if (debug)<br /> console.log(“Part too on the subject of Finish. Remaining Peak is: ” + remainingHeight + ” and window is ” + pixelWindow); </p> <p> return false;</p> <p> /**<br /> * Return proper if need to Avoid this Part when putting left module.<br /> */<br /> operate isLeftAvoid(jqo)<br /> if (“Determine”))<br /> if (debug)<br /> console.log(“isLeftAvoid: discovered Determine. return authentic”);</p> <p> return proper;</p> <p> if (“apart.pullquote”))<br /> if (debug)<br /> console.log(“isLeftAvoid: found pullquote. return genuine”);</p> <p> return actual;</p> <p> if (“pre”))<br /> if (debug)<br /> console.log(“isLeftAvoid: found pre. return authentic”);</p> <p> return actual;</p> <p> if (“div.gist”))<br /> if (debug)<br /> console.log(“isLeftAvoid: found github code block. return real”);</p> <p> return real;</p> <p> if (“aside”) && jqo.hasClass(“sidebar”) && jqo.hasClass(“medium”))<br /> if (debug)<br /> console.log(“isLeftAvoid: discovered medium sidebar. return genuine”);</p> <p> return actual;</p> <p> if (jqo.hasClass(“statsTable”))<br /> if (debug)<br /> console.log(“isLeftAvoid: discovered Classification statsTable. return actual”);</p> <p> return genuine;</p> <p> return false;</p> <p> /**<br /> * return genuine if there are no figures earlier than the Target placement that may bleed down into placement Component<br /> */<br /> operate noPrevFigures($originalTarget)<br /> var targetIndex = $originalTarget.index();<br /> var numElementsLookBack = 5;<br /> var figureIndex = null;<br /> var figureHeight = null;<br /> var startIndex = targetIndex – numElementsLookBack </p> <div id="drr-container"> <p>With its Cordova Instruments extension for Visual Studio Code, Microsoft this week is extending enhancing choices for builders the usage of Apache’s Cell construction framework.</p> <p>The extension will allow developers building Cordova apps with Visible Studio Code to debug projects, to find commands within the Command Palette, and use IntelliSense to browse objects, features, and parameters in plug-in APIs. Considering That it’s to be had as open Source on GitHub, builders can monitor concerns and submit pull requests.</p> <p>Apache Cordova allows construction of move-platform Mobile apps via HTML, CSS, and JavaScript, with builders able to target a couple of structures with one code base. Purposes execute within wrappers for EVERY platform and leverage API-bindings to get right of entry to a device’s sensors, knowledge, and Network status. Microsoft already has its Visible Studio TACO (Tools for Apache Cordova), however this extension provides new tips on how to construct, debug, and preview apps by way of Visual Studio Code.</p> <p>“You Can Use [the extension] with both inventory versions of the Apache Cordova framework and downstream frameworks like Ionic, Onsen, PhoneGap, and SAP Fior Cell Client,” said Microsoft’s Ryan J. Salva, fundamental program supervisor for the Visual Studio Shopper Tools Workforce, within the Visual Studio Weblog. “As A Result Of all of them use the same Cordova construct systems and core runtime, the TACO extension is adaptable to the JavaScript framework of your option.”</p> <aside class="nativo-promo smartphone" id="" /> <p>Visible Studio Code and Cordova Instruments now reinforce debugging of apps on emulators, simulators, and tethered gadgets for Android and iOS. “Which You Could also attach the debugger to an app that is already running on a tool; the debugger merely uses the appliance Identity to locate the running instance,” Salva mentioned.</p> </div> <div class="byline vcard author end-byline"> <p><img class="bylineImage imgId100356327 " src="" alt="Paul Krill" /></p> <div class="author-info with-image"> <p class="author-name"> Paul Krill — <span class="author-title">Editor at Massive</span></p> <p class="bio">Paul Krill is an editor at Massive at InfoWorld, whose coverage focuses on Utility development.</p> </p></div> <p><!-- end .author-info --></p> </div> <p><!-- blx4 #1218 blox4.html --></p> <div class="article-intercept"> <a href=""><br /> <i class="ss-icon ss-navigateright" /><em> From CIO:</em> 8 Free On-line Lessons to Grow Your Tech Skills<br /> </a></p> </div> <p> <!-- /.bodee --></p> <section id="funnel"> <section class="popular-brand-cols"> <section class="popular-col"><!-- /.promo --><br /> <!-- ./promo newsletter --></p> </section> <section class="brand-col"> </section> </section> <section class="featured-col"><!-- blx4 #937 blox4.simple --></p> </section> </section> <p> <!-- /role=main --><!-- /#page-wrapper --></p> <footer> <section class="brand"><span class="logo">InfoWorld</span><br /> <span class="tagline"> </span></p> <p> <span class="follow"><br /> <label>Observe us</label><br /> </span></p> </section> <section class="topics"> <nav id="ft1" /> <nav id="ft2" /></section> <section class="about"> </section> <section class="copyright"> <div class="wrapper"> <p>Copyright © 1994 – 2016 InfoWorld, Inc. All rights reserved.</p> <div class="network"> <div id="network-selector"> <p>Discover the IDG Network <i class="ss-icon tick">descend</i></p> </p></div> <p><!-- /#network-selector --> </div> <p><!-- /.network --> </div> <p><!-- /.wrapper --><br /> </section> </footer> <p><!-- Begin welcome ad overlay - gpt-overlay position --><br /> <!-- End welcome ad overlay - gpt-overlay position --></p> <p> <!-- Begin gpt-skin/gpt-pin/inread --></p> <p> <!-- End gpt-skin/gpt-pin/inread --> </p> <p><!-- Begin BlueKai Tag --></p> <p><!-- CryptoJS --></p> <p><!-- End BlueKai Tag --></p> <p><!-- BEGIN Krux Control Tag for InfoWorld --></p> <p><!-- END Krux Controltag --></p> <p><!-- START Nielsen Online SiteCensus? V6.0 --><br /> <!-- COPYRIGHT 2010 Nielsen Online --></p> <p><!-- END Nielsen Online SiteCensus? V6.0 --></p> <p><!-- SiteCatalyst code version: H.26.2. Copyright 1996-2013 Adobe, Inc. All Rights Reserved More info available at --></p> <p><img src="" height="1" width="1" border="0" alt="" /><!--/DO NOT REMOVE/--><br /> <!-- End SiteCatalyst code version: H.26.2. --></p></div> <p><br /> <br /><a href="">Source hyperlink </a></p> <div class="clear"></div> </div><!-- /entry --> <div id="comments"> <p> You must be logged in to post a comment <a href=""> Login </a> </p> </div><!-- #comments --> </div><!-- /main --> <div id="sidebar"> <div class="sidebarinner"> </div><!-- .sidebarinner --> </div><!-- /sidebar --> </div><!-- /container --></div><!-- end of wrapper --> <div id="footer"> <div id="foo_widget1"> <div id="flickr-widget-3" class="widget flickr_widget"><div class="widgetinner"><h3 class="widgettitle">Flickr Photo Stream</h3> <script type="text/javascript" src=""></script><div class="clear"></div></div></div> </div> <div id="foo_widget2"> <div id="recent-posts-3" class="widget widget_recent_entries"><div class="widgetinner"> <h3 class="widgettitle">Recent Posts</h3> <ul> <li> <a href="">Lottery good causes income down 15% as players shun draws</a> </li> <li> <a href="">FBI’s McCabe ‘has an Ohr problem,’ will not testify on Tuesday, source says</a> </li> <li> <a href="">Birth-control coverage fight faces key hearing in California</a> </li> <li> <a href="">Swimming Canada Bans Coach Convicted of Sexual Assault</a> </li> <li> <a href="">Arkansas panel clears way for new Ten Commandments marker</a> </li> </ul> </div></div> </div> </div> <div id="footer_data"> <ul class="footerpages"> <li class="first"><a href="" title="Great Today News">Home</a></li> <li class="page_item page-item-6"><a href="">Privacy Policy</a></li> <li class="page_item page-item-195"><a href="">Contact Us</a></li> <li class="page_item page-item-198"><a href="">Video Gallery</a></li> <li class="page_item page-item-201"><a href="">Sitemap</a></li> <li><a rel="nofollow" href="">RSS</a></li> <li class="right"><a href="#top" title="Great Today News" rel="home"><strong>↑</strong> Great Today News</a></li> </ul> <div class="clear"></div> <p id="footer-left-side"> <a href="" title="Great Today News" rel="home">Great Today News</a> </p><!-- #site-info --> <p id="footer-right-side"> <a href="">Log in</a> - Designed by <a href="" title="Today News">Today News</a> <script type='text/javascript' src=''></script> <script type='text/javascript'> /* <![CDATA[ */ var wpcf7 = {"apiSettings":{"root":"http:\/\/\/wp-json\/contact-form-7\/v1","namespace":"contact-form-7\/v1"},"recaptcha":{"messages":{"empty":"Please verify that you are not a robot."}},"cached":"1"}; /* ]]> */ </script> <script type='text/javascript' src=''></script> <script type='text/javascript' src=''></script> </p> <!-- #footer-right-side --> </div><!-- /footer_data --> <div class="hide"> <div id="adv_here"> <h3 class="widgettitle">Widgetized Section</h3> <p>Go to Admin » appearance » Widgets » and move a widget into Advertise Widget Zone</p> </div> </div> <!-- Quantcast Tag --> <script type="text/javascript"> var _qevents = _qevents || []; (function() { var elem = document.createElement('script'); elem.src = (document.location.protocol == "https:" ? "https://secure" : "http://edge") + ""; elem.async = true; elem.type = "text/javascript"; var scpt = document.getElementsByTagName('script')[0]; scpt.parentNode.insertBefore(elem, scpt); })(); _qevents.push({ qacct:"p-XSTdT3wyH_FGD" }); </script> <noscript> <div style="display:none;"> <img src="//" border="0" height="1" width="1" alt="Quantcast"/> </div> </noscript> <!-- End Quantcast tag --> </body> </html> <!-- Performance optimized by W3 Total Cache. Learn more: Page Caching using disk: enhanced Served from: @ 2017-12-13 05:25:59 by W3 Total Cache -->