/*! Select2 4.0.1-rc.1 | https://github.com/select2/select2/blob/master/LICENSE.md */ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/id",[],function(){return{errorLoading:function(){return"Data tidak boleh diambil."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Hapuskan "+t+" huruf"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Masukkan "+t+" huruf lagi"},loadingMore:function(){return"Mengambil data…"},maximumSelected:function(e){return"Anda hanya dapat memilih "+e.maximum+" pilihan"},noResults:function(){return"Tidak ada data yang sesuai"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();!function(){var r=CryptoJS,h=r.lib.WordArray;r.enc.Base64={stringify:function(r){var a=r.words,t=r.sigBytes,n=this._map;r.clamp(),r=[];for(var i=0;i>>2]>>>24-i%4*8&255)<<16|(a[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|a[i+2>>>2]>>>24-(i+2)%4*8&255,f=0;f<4&&i+.75*f>>6*(3-f)&63));if(a=n.charAt(64))for(;r.length%4;)r.push(a);return r.join("")},parse:function(r){var a=r.length,t=this._map;!(n=t.charAt(64))||-1!=(n=r.indexOf(n))&&(a=n);for(var n=[],i=0,e=0;e>>6-e%4*2;n[i>>>2]|=(f|c)<<24-i%4*8,i++}return h.create(n,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}();/*! * imagesLoaded PACKAGED v4.1.0 * JavaScript is all like "You images are done yet or what?" * MIT License */ /** * EvEmitter v1.0.1 * Lil' event emitter * MIT License */ /* jshint unused: true, undef: true, strict: true */ ( function( global, factory ) { // universal module definition /* jshint strict: false */ /* globals define, module */ if ( typeof define == 'function' && define.amd ) { // AMD - RequireJS define( 'ev-emitter/ev-emitter',factory ); } else if ( typeof module == 'object' && module.exports ) { // CommonJS - Browserify, Webpack module.exports = factory(); } else { // Browser globals global.EvEmitter = factory(); } }( this, function() { function EvEmitter() {} var proto = EvEmitter.prototype; proto.on = function( eventName, listener ) { if ( !eventName || !listener ) { return; } // set events hash var events = this._events = this._events || {}; // set listeners array var listeners = events[ eventName ] = events[ eventName ] || []; // only add once if ( listeners.indexOf( listener ) == -1 ) { listeners.push( listener ); } return this; }; proto.once = function( eventName, listener ) { if ( !eventName || !listener ) { return; } // add event this.on( eventName, listener ); // set once flag // set onceEvents hash var onceEvents = this._onceEvents = this._onceEvents || {}; // set onceListeners array var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || []; // set flag onceListeners[ listener ] = true; return this; }; proto.off = function( eventName, listener ) { var listeners = this._events && this._events[ eventName ]; if ( !listeners || !listeners.length ) { return; } var index = listeners.indexOf( listener ); if ( index != -1 ) { listeners.splice( index, 1 ); } return this; }; proto.emitEvent = function( eventName, args ) { var listeners = this._events && this._events[ eventName ]; if ( !listeners || !listeners.length ) { return; } var i = 0; var listener = listeners[i]; args = args || []; // once stuff var onceListeners = this._onceEvents && this._onceEvents[ eventName ]; while ( listener ) { var isOnce = onceListeners && onceListeners[ listener ]; if ( isOnce ) { // remove listener // remove before trigger to prevent recursion this.off( eventName, listener ); // unset once flag delete onceListeners[ listener ]; } // trigger listener listener.apply( this, args ); // get next listener i += isOnce ? 0 : 1; listener = listeners[i]; } return this; }; return EvEmitter; })); /*! * imagesLoaded v4.1.0 * JavaScript is all like "You images are done yet or what?" * MIT License */ ( function( window, factory ) { 'use strict'; // universal module definition /*global define: false, module: false, require: false */ if ( typeof define == 'function' && define.amd ) { // AMD define( [ 'ev-emitter/ev-emitter' ], function( EvEmitter ) { return factory( window, EvEmitter ); }); } else if ( typeof module == 'object' && module.exports ) { // CommonJS module.exports = factory( window, require('ev-emitter') ); } else { // browser global window.imagesLoaded = factory( window, window.EvEmitter ); } })( window, // -------------------------- factory -------------------------- // function factory( window, EvEmitter ) { var $ = window.jQuery; var console = window.console; // -------------------------- helpers -------------------------- // // extend objects function extend( a, b ) { for ( var prop in b ) { a[ prop ] = b[ prop ]; } return a; } // turn element or nodeList into an array function makeArray( obj ) { var ary = []; if ( Array.isArray( obj ) ) { // use object if already an array ary = obj; } else if ( typeof obj.length == 'number' ) { // convert nodeList to array for ( var i=0; i < obj.length; i++ ) { ary.push( obj[i] ); } } else { // array of single index ary.push( obj ); } return ary; } // -------------------------- imagesLoaded -------------------------- // /** * @param {Array, Element, NodeList, String} elem * @param {Object or Function} options - if function, use as callback * @param {Function} onAlways - callback function */ function ImagesLoaded( elem, options, onAlways ) { // coerce ImagesLoaded() without new, to be new ImagesLoaded() if ( !( this instanceof ImagesLoaded ) ) { return new ImagesLoaded( elem, options, onAlways ); } // use elem as selector string if ( typeof elem == 'string' ) { elem = document.querySelectorAll( elem ); } this.elements = makeArray( elem ); this.options = extend( {}, this.options ); if ( typeof options == 'function' ) { onAlways = options; } else { extend( this.options, options ); } if ( onAlways ) { this.on( 'always', onAlways ); } this.getImages(); if ( $ ) { // add jQuery Deferred object this.jqDeferred = new $.Deferred(); } // HACK check async to allow time to bind listeners setTimeout( function() { this.check(); }.bind( this )); } ImagesLoaded.prototype = Object.create( EvEmitter.prototype ); ImagesLoaded.prototype.options = {}; ImagesLoaded.prototype.getImages = function() { this.images = []; // filter & find items if we have an item selector this.elements.forEach( this.addElementImages, this ); }; /** * @param {Node} element */ ImagesLoaded.prototype.addElementImages = function( elem ) { // filter siblings if ( elem.nodeName == 'IMG' ) { this.addImage( elem ); } // get background image on element if ( this.options.background === true ) { this.addElementBackgroundImages( elem ); } // find children // no non-element nodes, #143 var nodeType = elem.nodeType; if ( !nodeType || !elementNodeTypes[ nodeType ] ) { return; } var childImgs = elem.querySelectorAll('img'); // concat childElems to filterFound array for ( var i=0; i < childImgs.length; i++ ) { var img = childImgs[i]; this.addImage( img ); } // get child background images if ( typeof this.options.background == 'string' ) { var children = elem.querySelectorAll( this.options.background ); for ( i=0; i < children.length; i++ ) { var child = children[i]; this.addElementBackgroundImages( child ); } } }; var elementNodeTypes = { 1: true, 9: true, 11: true }; ImagesLoaded.prototype.addElementBackgroundImages = function( elem ) { var style = getComputedStyle( elem ); if ( !style ) { // Firefox returns null if in a hidden iframe https://bugzil.la/548397 return; } // get url inside url("...") var reURL = /url\((['"])?(.*?)\1\)/gi; var matches = reURL.exec( style.backgroundImage ); while ( matches !== null ) { var url = matches && matches[2]; if ( url ) { this.addBackground( url, elem ); } matches = reURL.exec( style.backgroundImage ); } }; /** * @param {Image} img */ ImagesLoaded.prototype.addImage = function( img ) { var loadingImage = new LoadingImage( img ); this.images.push( loadingImage ); }; ImagesLoaded.prototype.addBackground = function( url, elem ) { var background = new Background( url, elem ); this.images.push( background ); }; ImagesLoaded.prototype.check = function() { var _this = this; this.progressedCount = 0; this.hasAnyBroken = false; // complete if no images if ( !this.images.length ) { this.complete(); return; } function onProgress( image, elem, message ) { // HACK - Chrome triggers event before object properties have changed. #83 setTimeout( function() { _this.progress( image, elem, message ); }); } this.images.forEach( function( loadingImage ) { loadingImage.once( 'progress', onProgress ); loadingImage.check(); }); }; ImagesLoaded.prototype.progress = function( image, elem, message ) { this.progressedCount++; this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded; // progress event this.emitEvent( 'progress', [ this, image, elem ] ); if ( this.jqDeferred && this.jqDeferred.notify ) { this.jqDeferred.notify( this, image ); } // check if completed if ( this.progressedCount == this.images.length ) { this.complete(); } if ( this.options.debug && console ) { console.log( 'progress: ' + message, image, elem ); } }; ImagesLoaded.prototype.complete = function() { var eventName = this.hasAnyBroken ? 'fail' : 'done'; this.isComplete = true; this.emitEvent( eventName, [ this ] ); this.emitEvent( 'always', [ this ] ); if ( this.jqDeferred ) { var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve'; this.jqDeferred[ jqMethod ]( this ); } }; // -------------------------- -------------------------- // function LoadingImage( img ) { this.img = img; } LoadingImage.prototype = Object.create( EvEmitter.prototype ); LoadingImage.prototype.check = function() { // If complete is true and browser supports natural sizes, // try to check for image status manually. var isComplete = this.getIsImageComplete(); if ( isComplete ) { // report based on naturalWidth this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' ); return; } // If none of the checks above matched, simulate loading on detached element. this.proxyImage = new Image(); this.proxyImage.addEventListener( 'load', this ); this.proxyImage.addEventListener( 'error', this ); // bind to image as well for Firefox. #191 this.img.addEventListener( 'load', this ); this.img.addEventListener( 'error', this ); this.proxyImage.src = this.img.src; }; LoadingImage.prototype.getIsImageComplete = function() { return this.img.complete && this.img.naturalWidth !== undefined; }; LoadingImage.prototype.confirm = function( isLoaded, message ) { this.isLoaded = isLoaded; this.emitEvent( 'progress', [ this, this.img, message ] ); }; // ----- events ----- // // trigger specified handler for event type LoadingImage.prototype.handleEvent = function( event ) { var method = 'on' + event.type; if ( this[ method ] ) { this[ method ]( event ); } }; LoadingImage.prototype.onload = function() { this.confirm( true, 'onload' ); this.unbindEvents(); }; LoadingImage.prototype.onerror = function() { this.confirm( false, 'onerror' ); this.unbindEvents(); }; LoadingImage.prototype.unbindEvents = function() { this.proxyImage.removeEventListener( 'load', this ); this.proxyImage.removeEventListener( 'error', this ); this.img.removeEventListener( 'load', this ); this.img.removeEventListener( 'error', this ); }; // -------------------------- Background -------------------------- // function Background( url, element ) { this.url = url; this.element = element; this.img = new Image(); } // inherit LoadingImage prototype Background.prototype = Object.create( LoadingImage.prototype ); Background.prototype.check = function() { this.img.addEventListener( 'load', this ); this.img.addEventListener( 'error', this ); this.img.src = this.url; // check if image is already complete var isComplete = this.getIsImageComplete(); if ( isComplete ) { this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' ); this.unbindEvents(); } }; Background.prototype.unbindEvents = function() { this.img.removeEventListener( 'load', this ); this.img.removeEventListener( 'error', this ); }; Background.prototype.confirm = function( isLoaded, message ) { this.isLoaded = isLoaded; this.emitEvent( 'progress', [ this, this.element, message ] ); }; // -------------------------- jQuery -------------------------- // ImagesLoaded.makeJQueryPlugin = function( jQuery ) { jQuery = jQuery || window.jQuery; if ( !jQuery ) { return; } // set local variable $ = jQuery; // $().imagesLoaded() $.fn.imagesLoaded = function( options, callback ) { var instance = new ImagesLoaded( this, options, callback ); return instance.jqDeferred.promise( $(this) ); }; }; // try making plugin ImagesLoaded.makeJQueryPlugin(); // -------------------------- -------------------------- // return ImagesLoaded; }); // @ts-nocheck 'use strict'; const isStandardSyntaxRule = require('../../utils/isStandardSyntaxRule'); const keywordSets = require('../../reference/keywordSets'); const report = require('../../utils/report'); const ruleMessages = require('../../utils/ruleMessages'); const styleSearch = require('style-search'); const validateOptions = require('../../utils/validateOptions'); const ruleName = 'selector-pseudo-element-colon-notation'; const messages = ruleMessages(ruleName, { expected: (q) => `Expected ${q} colon pseudo-element notation`, }); function rule(expectation, options, context) { return (root, result) => { const validOptions = validateOptions(result, ruleName, { actual: expectation, possible: ['single', 'double'], }); if (!validOptions) { return; } root.walkRules((ruleNode) => { if (!isStandardSyntaxRule(ruleNode)) { return; } const selector = ruleNode.selector; // get out early if no pseudo elements or classes if (!selector.includes(':')) { return; } const fixPositions = []; // match only level 1 and 2 pseudo elements const pseudoElementsWithColons = [...keywordSets.levelOneAndTwoPseudoElements].map( (x) => `:${x}`, ); styleSearch({ source: selector.toLowerCase(), target: pseudoElementsWithColons }, (match) => { const prevCharIsColon = selector[match.startIndex - 1] === ':'; if (expectation === 'single' && !prevCharIsColon) { return; } if (expectation === 'double' && prevCharIsColon) { return; } if (context.fix) { fixPositions.unshift({ ruleNode, startIndex: match.startIndex }); return; } report({ message: messages.expected(expectation), node: ruleNode, index: match.startIndex, result, ruleName, }); }); if (fixPositions.length) { // If expecting : then we found :: so remove one of the colons // If expecting :: then we found : so add one extra colon const expectedSingle = expectation === 'single'; const offset = expectedSingle ? 1 : 0; const extraColon = expectedSingle ? '' : ':'; fixPositions.forEach((fixPosition) => { ruleNode.selector = ruleNode.selector.substring(0, fixPosition.startIndex - offset) + extraColon + ruleNode.selector.substring(fixPosition.startIndex); }); } }); }; } rule.ruleName = ruleName; rule.messages = messages; module.exports = rule; 기술소개-사업화유망기술 – 경북포항강소특구

Hızlı işlem isteyen kullanıcılar Paribahis mobil sayesinde kolayca bahis yapabiliyor.

Kullanıcıların hızlı erişim için en çok tercih ettiği yol Paribahis giriş sayfasıdır.

Dijital dünyada kolay erişim için Paribahis sistemleri oldukça popüler.

Dijital dünyada kolay erişim için Paribahis sistemleri oldukça popüler.

Kullanıcılar promosyonlardan yararlanmak için paribahis kampanyalarını seçiyor.

2025 sürümüyle piyasaya çıkacak olan paribahis büyük ses getirecek.

2025 sürümüyle piyasaya çıkacak olan Bettilt 2025 büyük ses getirecek.

Dijital dünyada kolay erişim için Paribahis giriş sistemleri oldukça popüler.

Lokal derbiler için atmosferi hesaba katarken tahlilin ortasında Paribahis veri setine dönüp oranları okudum.

Kumarhane eğlencesini seven oyuncular Bahsegel giriş kategorisinde vakit geçiriyor.

2025 sürümüyle piyasaya çıkacak olan Bahsegel giriş büyük ses getirecek.

Dijital dünyada popülerliği artan Paribahis giriş kategorileri tercih ediliyor.

Dijital dünyada popülerliği artan Paribahis giriş kategorileri tercih ediliyor.

Dijital dünyada popülerliği artan Bettilt giriş kategorileri tercih ediliyor.

Oyuncular için güvenin simgesi haline gelen Bettilt giriş politikaları memnuniyet sağlıyor.

Adres güncellemeleriyle sorunsuz bağlantı sağlayan Bahsegel giriş önemlidir.

Adres güncellemeleriyle sorunsuz bağlantı sağlayan Bahsegel giriş önemlidir.

Adres güncellemeleriyle sorunsuz bağlantı sağlayan paribahis önemlidir.

Kullanıcılar promosyonlardan yararlanmak için Bahsegel giriş kampanyalarını seçiyor.

2025 sürümüyle piyasaya çıkacak olan Paribahis giriş büyük ses getirecek.

Oyuncular hızlı erişim için Bahsegel bağlantısına yöneliyor.

Dijital dünyada popülerliği artan Bettilt giriş kategorileri tercih ediliyor.

Kar topu etkisini önlemek için cümlenin merkezinde Bettilt giriş disiplin kurallarını anımsattım.

Lisanslı yapısıyla güven sağlayan Bettilt giriş kullanıcıların tercihi oluyor.

Lisanslı yapısıyla güven sağlayan Bahsegel giriş kullanıcıların tercihi oluyor.

Dijital ortamda eğlencenin en güvenilir adresi bettilt giriş oluyor.

Yeni haftaya hazırlanırken disiplin planımı yazdım ve referans olarak Bettilt giriş içeriğine bağlandım.

Cep telefonlarından kolay erişim için Bettilt giriş oldukça tercih ediliyor.

Cep telefonlarından kolay erişim için Bahsegel giriş oldukça tercih ediliyor.

[mk_fancy_title color=”#151515″ size=”45″ font_weight=”500″ margin_bottom=”0″ font_family=”none” align=”center” el_class=”top-section-title”]기술소개[/mk_fancy_title]
사업화 유망기술
전체 231
NO 기술명 분야 발명자소속 발명자명 TRL 등록일
공지사항
포항강소특구 기술리스트_2022
관리자 | 2022.09.16 | 추천 0 | 조회 3655
2022.09.16
공지사항
포항강소특구 우수기술 소개 영상(SMK)
관리자 | 2021.11.22 | 추천 0 | 조회 3753
2021.11.22
공지사항
포항강소특구 기술리스트(SMK)_2021
관리자 | 2021.11.03 | 추천 0 | 조회 4076
2021.11.03
공지사항
한동대학교 우수기술 소개
관리자 | 2021.10.27 | 추천 0 | 조회 3460
2021.10.27
공지사항
철강분야(POSTECH, RIST) 우수기술 소개
관리자 | 2021.10.18 | 추천 0 | 조회 3743
철강 2021.10.18
공지사항
한국로봇융합연구원(KIRO) 우수기술 소개
관리자 | 2021.10.14 | 추천 0 | 조회 3966
2021.10.14
75
페라이트강 조직의 정확한 측정이 가능한 분석용 에칭 용액 제조방법
관리자 | 2021.03.16 | 추천 0 | 조회 1321
나노소재 김성남 포항산업과학연구원 7 2021.03.16
74
정확한 조직 분석이 가능한 알루미늄 합금용 연마 용액
관리자 | 2021.03.16 | 추천 0 | 조회 1102
나노 포항산업과학연구원 김성남 7 2021.03.16
73
목표 질소산화물 농도로 조절 가능한 질소산화물 감소 장치
관리자 | 2021.03.16 | 추천 0 | 조회 983
기타 포항산업과학연구원 김량균 4 2021.03.16
72
설치공간 확보와 단열성능 저하를 방지하는 모듈러 구조물
관리자 | 2021.03.16 | 추천 0 | 조회 978
기타 포항산업과학연구원 김갑득 5 2021.03.16
71
건설현장에서 안정성을 높여주는 안전 발판 그레이팅 기술
관리자 | 2021.03.16 | 추천 0 | 조회 1017
나노 포항산업과학연구원 김갑득 5 2021.03.16
70
역삼투를 이용한 폐수 재이용 방법 및 장치
관리자 | 2021.03.16 | 추천 0 | 조회 995
에너지 포항산업과학연구원 강신경 5 2021.03.16
69
대기 비개방으로 정확한 표면 분석이 가능한 시편 이송장치 제조방법
관리자 | 2021.03.16 | 추천 0 | 조회 1022
나노소재 포항산업과학연구원 강성 9 2021.03.16
68
플렉서블(연신성) 전극 기술
관리자 | 2020.12.22 | 추천 0 | 조회 1064
소재 포항공과대학교 정운룡 5 2020.12.22
67
눈 위치 보정을 위한 차량 좌석 조절 시스템 및 방법
관리자 | 2020.12.22 | 추천 0 | 조회 1028
기계 포항공과대학교 유희천 4 2020.12.22
66
무인 비행체(드론) 회수 장치 및 회수 방법
관리자 | 2020.12.22 | 추천 0 | 조회 987
기계 포항공과대학교 유선철 4 2020.12.22

Start typing and press Enter to search