並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 71件

新着順 人気順

javascript setattribute idの検索結果1 - 40 件 / 71件

  • SPA認証トークンはlocalStorageでもCookieでもない、Auth0方式はいいねというお話 - @mizumotokのブログ

    SPA認証トークンをどこに保存するかは論争が絶えません。localStorageやCookieがよく使われますが、Auth0は違う方法を採用しています。この記事では、Auth0のトークン管理の方式を理解でき、トークン管理上のセキュリティへの理解を深めることができます。 SPAの認証トークンをどこに保存するか ブラウザでトークンを保存できる場所 保存場所の比較 メリット・デメリット Auth0のアプローチ トークンはインメモリに保存 OpenID Connect準拠とトークン取得のUI/UXの悪化回避を両立 Auth0のjsライブラリ ログイン アクセストークンの(再)取得 図解 ログイン アクセストークンの(再)取得 自サービス内の認証だけのもっと簡易な構成 ログイン IDトークン取得 まとめ SPAの認証トークンをどこに保存するか React やVueで認証付きSPA(Single Pa

      SPA認証トークンはlocalStorageでもCookieでもない、Auth0方式はいいねというお話 - @mizumotokのブログ
    • 【PoC編】XSSへの耐性においてブラウザのメモリ空間方式はLocal Storage方式より安全か? - GMO Flatt Security Blog

      はじめに こんにちは。 セキュリティエンジニアの@okazu-dm です。 この記事は、Auth0のアクセストークンの保存方法について解説した前回の記事の補足となる記事です。前回の記事の要旨をざっくりまとめると以下のようなものでした。 Auth0はデフォルトではアクセストークンをブラウザのメモリ空間上にのみ保存するin-memory方式であり、XSSへの耐性のなさ等の理由でlocalStorageで保存することを推奨していない しかし、XSSでアクセストークンを奪取できるのはin-memory方式でも同じのはず(検証は行いませんでした)。localStorage方式を過度に忌避する必要はないのではないか なお、Flatt Securityの提供するセキュリティ診断はAuth0に限らずFirebase AuthenticationやAmazon CognitoなどのIDaaSのセキュアな利用

        【PoC編】XSSへの耐性においてブラウザのメモリ空間方式はLocal Storage方式より安全か? - GMO Flatt Security Blog
      • インクリメンタルに新しい技術を取り入れる方法。TypeScriptへの移行を例にしたプロセス

        📝 require(moduleName) は同期処理なのに対して、import(moduleName)は非同期処理となります。 📝 tsconfig.jsonでesModuleInteropがtrueでないとdeafult importの意味合いは異なります。 この表はCommonJS ModulesとECMAScript Modulesで機能的に1対1で応するという意味ではありませんが、 大まかにはこの対応表にそってECMAScript Modulesの構文へと変換ができます。 エディターを使い手動で変換したり、次のようなツールを使ってある程度機械的な変換も可能です。 cjstoesm commonjs-to-es-module-codemod このモジュールの変換で重要なことは、できるだけCommonJS ModulesとECMAScript Modulesを混ぜないことです。

          インクリメンタルに新しい技術を取り入れる方法。TypeScriptへの移行を例にしたプロセス
        • ただ15行のシェルスクリプトで個人ナレッジマネジメントツールを作った話

          はじめに 自分が読んだ本や記事などを読む時に書いたノートを体系的に管理したいですよね。 現在優秀なナレッジマネジメントツールはありふれています。企業向けだと Confluence DocBase Qiita Team などがあります。個人向けは Notion HackMD Boost Note のようなシンプルで使いやすいツールがあります。マインドマップツールをさらに含めると数え切れません。 筆者自身はミニマリストです。 コードのようにGithubで自分のノートを管理したい Webからマインドマップ形式になっているノートを確認したい サブスクではなく、無料で使いたい なので、個人ナレッジマネジメントツールを自作したいという発想に至りました。 結果としては下記の15行シェルスクリプト、GitHub ActionsとMarkdownマインドマップ変換ツールmarkmapで作りました。 項目をク

            ただ15行のシェルスクリプトで個人ナレッジマネジメントツールを作った話
          • 【脱jQuery】jQuery <=> vanillaJS 書き換え集

            jQuery <=> JavaScript全書き換え一覧ではありません jQueryで書いていたコードをvanilla(素のJavaScript)に書き換えたいけど書き方がわからなくて調べ方もピンとこない状態の自分がこれを見ることができたらきっと嬉しいと思ったのでここに供養します。 脳の記憶容量が8バイトくらいしかないので今でもシンプルにJavaScriptの書き方をページ内検索して使ったりしています。 /*----------------------------------- セレクター ------------------------------------*/ //html $("html") document.documentElement; //body $("body") document.body; //id $("#hoge"); document.getElementBy

              【脱jQuery】jQuery <=> vanillaJS 書き換え集
            • detailsとsummaryタグで作るアコーディオンUI - アニメーションのより良い実装方法 - ICS MEDIA

              アコーディオン型ユーザーインターフェイス(UI)はウェブページでよくみられる表現です。巷ではさまざまな方法でアコーディオンUIを作る方法が紹介されていますが、みなさんはどのような方法で実装していますか? 見た目だけでなくアクセシビリティ対策までしっかりとできているでしょうか? <details>要素と<summary>要素は、アコーディオンUIを実装するのに最適です。過去にIE対策として<button>要素や<div>要素、<input>要素などでアコーディオンUIを作っていた方は、アクセシビリティ対策が簡単にできるので、<details>要素と<summary>要素の採用がオススメです。 この記事では、<details>要素と<summary>要素がアコーディオンUIに最適と言える理由と、HTMLのマークアップからCSSでのスタイリング、JavaScriptでのアニメーション制御まで順を

                detailsとsummaryタグで作るアコーディオンUI - アニメーションのより良い実装方法 - ICS MEDIA
              • Chrome拡張機能の開発で気をつけたいセキュリティリスク - GMO Flatt Security Blog

                はじめに こんにちは。GMO Flatt Security株式会社 セキュリティエンジニアの大塚 (@Alphe) です。 最近、AIを活用したバイブコーディングでブラウザ拡張機能を開発するケースが増えています。「コードが書けなくてもChrome拡張を作れる — AI時代の個人開発入門」「Qiitaのトレンド記事をワンクリックで確認できるChrome拡張を作った」といった書籍や記事が頻繁に投稿されているほか、企業でも社内向けChrome拡張を開発・共有する動きが広がっています。 ブラウザ拡張機能は、手軽にWebページの見た目や操作性を自分好みにカスタマイズしたり、日々の作業を自動化したりできる便利な仕組みです。しかし、当然ながら拡張機能特有のセキュリティリスクも存在します。 本記事ではブラウザ拡張機能の仕組みとアタックサーフェスを整理したうえで、代表的な攻撃手法と対策を解説していきます。な

                  Chrome拡張機能の開発で気をつけたいセキュリティリスク - GMO Flatt Security Blog
                • Cloudflare Workers + Hono ワークショップ - ServerlessDays Tokyo 2023

                  Cloudflare Workers + Hono ワークショップ 資料はこちら => workshops.yusuke.run #serverlessdays Yusuke Wada 2023-09-24 ServerlessDays Tokyo 2023 workshops.yusuke.run アジェンダ ワークショップについて Workers イントロダクション Hono イントロダクション 基本編 プロキシ編 Web API編 フルスタック編 AI編 Honoをより深く知る その他 1. ワークショップについて 1.1 対象 対象者 Cloudflareでのアプリケーション作成に興味のある方 Honoを使ってみたい方 フロント、バックエンド問いません 前提条件 Wranglerが動く環境をつくっておく npx wrangler が動く JavaScriptに対する知識があるとよい

                    Cloudflare Workers + Hono ワークショップ - ServerlessDays Tokyo 2023
                  • マイクロインタラクションからクリエイティブ表現まで!Tween24.jsを使った演出表現 - ICS MEDIA

                    ウェブサイトのリッチな表現に欠かせないアニメーション。実装にはCSSを使ったものからJavaScriptを使ったもの、WebGLを使ったものまでありますが、今回はTween24.jsを使ったウェブ制作の場面で使える実践的表現を紹介します。 基本的な導入方法や使い方は記事『新感覚!メソッドチェーンでアニメーションがスラスラ書ける「Tween24.js」を作りました』をご覧ください。 CSSアニメーションとの違い CSSのtransitionプロパティや@keyframesを使ったアニメーションなどがあります。これらは比較的手軽にアニメーションを実装できるのがメリットです。手軽さとは引き換えに複雑なアニメーションや動的に変数が変わるようなアニメーションが苦手です。一方でJavaScriptを使った手法は、複雑なものや動的なアニメーションも実装できるメリットがありますが、CSSと比べると記述量も

                      マイクロインタラクションからクリエイティブ表現まで!Tween24.jsを使った演出表現 - ICS MEDIA
                    • React Server Componentsを理解する | POSTD

                      React Server Componentsを理解する React Server Components(RSC)の登場により、Reactエコシステムにおけるサーバーレンダリングの重要性が高まりました。RSCを使用することで、デベロッパーは一部のコンポーネントをサーバー側でレンダリングしつつ、抽象化によりクライアントとサーバーの隔たりを感じさせないユーザビリティを実現することができます。Client ComponentsとServer Componentsをコード内に混在させることで、すべてのコードが1カ所で実行されているように見せることができます。 しかし、抽象化には常にコストが伴います。そのコストとはどのようなものでしょうか。RSCはいつ「使える」のでしょうか。バンドルサイズが小さくなると、帯域幅も狭まるのでしょうか。RSCを「使うべき」ときはいつでしょうか。RSCを適切に使う上でデベ

                        React Server Componentsを理解する | POSTD
                      • React's UI State Model vs Vanilla JavaScript DOM State — A Beginner's Introduction

                        This article is aimed at beginners who've never had the chance to see 'why React'. It takes a very contrived example to make a point about how React's declarative state model could help keep state sanity when code scales. If you're an experienced developer these series of posts by Steven might give deep insights about why declarative abstractions scale in a way you might not have thought before. T

                        • HTML&CSSとピュアなJavaScriptだけでパズルゲームを作る方法

                          概要 □ スライドパズルのゲームを作る □ 基本に立ち返りHTMLとCSSとピュアなJavaScriptだけで作成する ・パズルの実装はシンプルで簡単。 ・考え方さえ理解すれば早いため、実装の前にイメージで説明する。 □ パズルを試したい人は https://jd253t.csb.app (codesandboxのpreview)から試せる ※下の埋め込み表示ではJavascriptが想定通り動作しないので上記のURLから試してください ※パズルはPCからの操作のみ対応 ※codesandboxのpreviewが安定しないことがあります。もし表示が崩れていたらソースコードを貼っているのでローカルで試してください イメージ.パズルを作る方法 □ 1.canvas要素(390×390で)を作成する □ 2.写真を390×390でcanvas内に描画する □ 3.スライドパズル画像を作る定義を作

                            HTML&CSSとピュアなJavaScriptだけでパズルゲームを作る方法
                          • Patterns for Reactivity with Modern Vanilla JavaScript – Frontend Masters Blog

                            “Reactivity” is how systems react to changes in data. There are many types of reactivity, but for this article, reactivity is when data changes, you do things. Reactivity Patterns are Core to Web Development We handle a lot with JavaScript in websites and web apps since the browser is an entirely asynchronous environment. We must respond to user inputs, communicate with servers, log, perform, etc.

                              Patterns for Reactivity with Modern Vanilla JavaScript – Frontend Masters Blog
                            • A virtual DOM in 200 lines of JavaScript

                              In this post I’ll walk through the full implementation of a Virtual DOM in a bit over 200 lines of JavaScript. The result is a full-featured and sufficiently performant virtual DOM library (demos). It’s available on NPM as the smvc package. The main goal is to illustrate the fundamental technique behind tools like React. React, Vue and the Elm language all simplify the creation of interactive web

                              • MissAV | オンラインで無料ハイビジョンAV映画が見られる | 飽きるまで映画が存分に見られる

                                = 1024 }, isThreeColumns() { return document.documentElement.clientWidth >= 768 && document.documentElement.clientWidth < 1280 }, cdnUrl(path) { return `https://fivetiu.com${path}` }, itemUrl(item) { let dmPrefix = item.dm ? `/dm${item.dm}` : ''; let url = this.locale === 'zh' ? `${dmPrefix}/${item.dvd_id}` : `${dmPrefix}/${this.locale}/${item.dvd_id}` if (item.recommend_id) { url += `#${item.reco

                                  MissAV | オンラインで無料ハイビジョンAV映画が見られる | 飽きるまで映画が存分に見られる
                                • iOS Safari で触覚フィードバックを実現する WebHaptics

                                  WebHaptics は、Web アプリケーションで触覚フィードバックを実装するための JavaScript ライブラリです。iOS Safari でも触覚フィードバックを提供することができます。この記事では、WebHaptics ライブラリの概要と、どのようにして iOS Safari で触覚フィードバックを実現しているのかについて解説します。 触覚フィードバック(haptic feedback)とは、デバイスが振動や力の変化などを通じて、ユーザーの皮膚や筋肉に物理的な感覚を伝える技術のことです。これにより、視覚や聴覚だけでは伝えられないリアリティのある体験を提供できます。例えばボタンを押した時に振動が発生することで、ユーザーは操作が成功したことを感じ取れます。 今日のモバイルデバイス(iPhone や Android スマートフォンなど)には、触覚フィードバックを提供するためのハードウ

                                    iOS Safari で触覚フィードバックを実現する WebHaptics
                                  • WebKit Features in Safari 18.0

                                    ContentsNew in Safari 18Web apps for MacCSSSpatial WebHTMLJavaScriptWeb APICanvasManaged Media SourceWebRTCHTTPSWebGLWeb InspectorPasskeysSafari ExtensionsApple PayDeprecationsBug Fixes and moreUpdating to Safari 18.0Feedback Safari 18.0 is here. Along with iOS 18, iPadOS 18, macOS Sequoia and visionOS 2, today is the day another 53 web platform features, as well as 25 deprecations and 209 resolve

                                      WebKit Features in Safari 18.0
                                    • Let's build a Chrome extension that steals everything

                                      Update: this piece was featured on the NBTV YouTube Channel Manifest v3 may have taken some of the juice out of browser extensions, but I think there is still plenty left in the tank. To prove it, let’s build a Chrome extension that steals as much data as possible. I’m talking kitchen sink, whole enchilada, Grinch-plundering-Whoville levels of data theft. This will accomplish two things: Explore t

                                        Let's build a Chrome extension that steals everything
                                      • 350行でつくるVite⚡

                                        この記事はtraP新歓ブログリレー2022 41日目(4/18)の記事です。 こんにちは、19Bの翠(sappi_red)です。 普段はSysAd班で活動しています。 この記事ではVite-likeなウェブフロントエンドツールをつくっていきながら、Viteの大まかな仕組みを説明していきます。 できる限り細かく手順を書いたので、ぜひ実際に追ってみてください! 実際に完成したものはこのリポジトリ(sapphi-red/micro-vite)にあります。名称は愚直にMicroViteにしました。 ある程度Viteに近い実装にはなっていますが、そこそこいろんな箇所が異なります また、動作確認はNode.js v16.14.2で行っています。(がおそらくv12以降なら動くと思います) 準備 とりあえず動作確認用のごく単純なウェブアプリケーションを作ります。 動作確認用なのでplaygroundという

                                          350行でつくるVite⚡
                                        • セカンドパーティコンテンツをもつサードパーティスクリプトの作り方

                                          KARTE Blocks(以下Blocks)では、Blocksを利用するサイトに1行の<script>タグを埋め込むことでサイト書き換えや効果計測をします。 Blocksでは、この<script>タグで埋め込むスクリプトファイルをbuilder.jsと呼んでいます。 この記事では、Blocksが扱うbuilder.jsというサードパーティスクリプトの仕組みについて紹介します。 builder.jsというセカンドパーティコンテンツをもつサードパーティスクリプトについて知る builder.jsでは安全にサードパーティスクリプトを開発して、配布、読み込みしているのかを知る サードパーティスクリプトの開発、テスト、デバッグ方法について知る この記事は「KARTE Blocksリリースの裏側」の3日目の記事です。全10回の予定です。 これから毎日記事を更新していくため、更新をチェックしたい方は@K

                                            セカンドパーティコンテンツをもつサードパーティスクリプトの作り方
                                          • Patterns for Memory Efficient DOM Manipulation with Modern Vanilla JavaScript – Frontend Masters Blog

                                            Patterns for Memory Efficient DOM Manipulation with Modern Vanilla JavaScript I’ll discuss best practices to avoid excess memory usage when managing updating the DOM to make your apps blazingly fast™️. DOM: Document Object Model – A Brief Overview When you render HTML, the live view of those rendered elements in the browser is called the DOM. This is what you’ll see in your developer tools “Elemen

                                              Patterns for Memory Efficient DOM Manipulation with Modern Vanilla JavaScript – Frontend Masters Blog
                                            • nJAV | オンラインで無料ハイビジョンAV映画が見られる | 飽きるまで映画が存分に見られる

                                              = 1024 }, isThreeColumns() { return document.documentElement.clientWidth >= 768 && document.documentElement.clientWidth < 1280 }, cdnUrl(path) { return `https://fourhoi.com${path}` }, itemUrl(item) { let dmPrefix = item.dm ? `/dm${item.dm}` : ''; let url = this.locale === 'zh' ? `${dmPrefix}/${item.dvd_id}` : `${dmPrefix}/${this.locale}/${item.dvd_id}` if (item.recommend_id) { url += `#${item.reco

                                                nJAV | オンラインで無料ハイビジョンAV映画が見られる | 飽きるまで映画が存分に見られる
                                              • Persistent npm Campaign Shipping Trojanized jQuery | Phylum

                                                Since May 26, 2024, Phylum has been monitoring a persistent supply chain attacker involving a trojanized version of jQuery. We initially discovered the malicious variant on npm, where we saw the compromised version published in dozens of packages over a month. After investigating, we found instances of the trojanized jQuery on other platforms, such as GitHub, and even as a CDN-hosted resource on j

                                                  Persistent npm Campaign Shipping Trojanized jQuery | Phylum
                                                • News from WWDC24: WebKit in Safari 18 beta

                                                  Jun 10, 2024 by Jen Simmons, Jon Davis, Karl Dubost, Anne van Kesteren, Marcos Cáceres, Ada Rose Canon, Tim Nguyen, Sanjana Aithal, Pascoe, and Garrett Davidson ContentsWebXRCSSWeb apps for MacSafari ExtensionsSpatial mediaHTMLMediaWebRTCPasskeysHTTPSJavaScriptWeb APICanvasWebGLWeb InspectorWKWebViewApple PayDeprecationsBug Fixes and moreHelp us Beta TestFeedback The last year has been a great one

                                                    News from WWDC24: WebKit in Safari 18 beta
                                                  • 100行で作る2D空間ボイチャツール&入ったら誰も居ない悲しみの解決! - ABEJA Tech Blog

                                                    こんにちは、メリークリスマス。株式会社ABEJAのラボチームで日々もがいてる藤本(@peisuke)です。本記事はABEJAアドベントカレンダー2022の25日目の記事です。 仕事では機械学習をやっていますが、機械学習で何かの問題を解いているだけでは中々インパクトがでないなぁ思います。機械学習だけではなく、何かしらのサービスと組み合わせることで価値が出ると思います。そんなこともあり、たまにはサービス開発するための技術も磨いております。今回は、2D空間でのボイチャツールを作ってみているので紹介していきます。 まず最小に作ってみた奴のスクショを貼ります。 作ったツールのキャプチャ Chrome Extension上にボイチャのログイン状況を可視化 はじめに コロナ禍に入ってからリモートワークが大分増えたのではないかと思います。リモートワーク最高ですね!でも、リモートワークしているだけだとちょっ

                                                      100行で作る2D空間ボイチャツール&入ったら誰も居ない悲しみの解決! - ABEJA Tech Blog
                                                    • 【2026年版】Web Components詳細入門ガイド

                                                      誰にでも、できればやりたくないと思うプロジェクトがあるはずです。コードが管理不能になり、スコープが拡張し、修正の上に修正を重ねる有様。コードが絡まり合い、構造が崩壊。コーディングは混乱を招くことがあります。 そこで責任の所在がはっきりした、シンプルで独立したモジュールです。これを使用することで、プロジェクトはスムーズに進みます。コードをカプセル化すると、実装についての心配も軽減できます。あるインプットが与えられたときにモジュールが何をアウトプットするかが分かっていれば、その目標が「どのように達成されたか」を理解する必要は必ずしもないのです。 モジュールの概念を単一のプログラミング言語で理解するのは、難しいことではありません。しかし、ウェブ開発の世界では、多様な技術を組み合わせることが必要になります。ブラウザはHTML、CSS、JavaScriptを解析し、ページのコンテンツ、スタイル、機能

                                                        【2026年版】Web Components詳細入門ガイド
                                                      • Google Apps Script + gas-db + HTML を使った TODO アプリ

                                                        以前自分が作った ライブラリをこちらで紹介したのですが、使い所がわかりづらいかもと思いまして、TODOアプリのサンプルを作りました。 このサンプルは以下の技術を組み合わせ、簡易的な TODO リストアプリを構築する例です: gas-db(Google スプレッドシートをデータベースのように扱うためのライブラリ) Google Apps Script のウェブアプリ機能 Apps Script から返される HTML(クライアントサイド JS) GitHub Pages などの外部ホスティングは不要で、すべてを GAS 上で提供します。 また、こちらで紹介したコードはリポジトリ内でも載せていますので 完全なコードが気になる方は こちら をご覧ください。 ↓↓↓ サンプルコード ↓↓↓ 動作するアプリ (デプロイしたらURL変わるから動かなくなるかも) ↓↓ スプレッドシート(誰でも編集できま

                                                          Google Apps Script + gas-db + HTML を使った TODO アプリ
                                                        • OpenAI Codex の使い方|npaka

                                                          1. Codex「Codex」は、自然言語と数十億行のコードの両方で学習したGPT-3ベースのモデルです。Pythonの能力が最も高く、JavaScript、Go、Perl、PHP、Ruby、Swift、TypeScript、SQL、Shell を含む10を超える言語を熟知しています。 「Codex」は、次のような様々なタスクに利用できます。 ・コメントをコードに変換。 ・コンテキスト内で次の行または関数を記述。 ・アプリケーションの有用なライブラリや API 呼び出しなどの知識の提供。 ・コメントの追加。 ・効率化のためのコードの書き直し。 2. Codexの使用例「Playground」でModelに「code-davinci-002」を指定して試しています。 2-1. 「Hello」と言う (Python)""" Ask the user for their name and say

                                                            OpenAI Codex の使い方|npaka
                                                          • `<details>` 要素の `name` 属性による排他的なアコーディオンの実装

                                                            `<details>` 要素の `name` 属性を利用してグループ化することにより、排他的なアコーディオンを JavaScript なしで実装できます。 アコーディオンは Disclosure(コンテンツを折りたたむ、または展開することを可能にするウィジェット)が垂直に並べられた UI の総称です。いくつかのアコーディオンはグループ化された Disclosure の中でただ 1 つしか開くことができないという制約を持っています(排他的なアコーディオン)。つまり、ある Disclosure が開いているときに、他の Disclosure を開いた場合には、開いている Disclosure は閉じられるという挙動を実装する必要があります。 単純な Disclosure の場合には <details> 要素を利用することで JavaScript を用いずとも実装できます。しかし、排他的なアコー

                                                              `<details>` 要素の `name` 属性による排他的なアコーディオンの実装
                                                            • A Deep Dive Into The Wonderful World Of SVG Displacement Filtering — Smashing Magazine

                                                              What exactly is a displacement filter? In this article, Dirk Weber will be diving into one of the most spectacular filter effects: the SVG feDisplacementMap filter primitive. In order to make it all easier to digest, Dirk has divided the article into three parts in which you’ll be exploring how the feDisplacementMap works, methods to create fancy displacement maps in SVG, and methods to animate th

                                                                A Deep Dive Into The Wonderful World Of SVG Displacement Filtering — Smashing Magazine
                                                              • Next.jsに入門した - Qiita

                                                                以下のチュートリアルをやっていきます https://nextjs.org/learn/dashboard-app htmlとJavaScriptがだいたい分かっている人向け記事です 1. 実行/開発環境について Reactと同様、以下の3つの実行環境が使えます A: ビルドしてサーバーに置いて実行する B: 開発用サーバーを立てて実行する C: オンブラウザで実行する Aは本番用で、ビルドすればミニファイ済みのコードが手に入りますので本番環境ではこれを使うべきなんですが、わりと面倒なので本番以外では使わないと思います。BはReactの開発用サーバーを立てて使うやり方で、ライブラリをnpm installしておいてimportして使うという書き方が出来るので通常はこれで開発するんじゃないでしょうか。Cはhtmlのscriptタグでインポートして使うやり方で、既存サイトにちょい足ししたい時や

                                                                  Next.jsに入門した - Qiita
                                                                • Advent Calendar: OpenTelemetryの計装をやってみた話 - Sansan Tech Blog

                                                                  こんにちは。技術本部 Bill One Engineering Unit の前田です。現在はSREチームに所属しており、アプリケーションに強いSREといった立ち位置になっています。今回は、私がSREチームに異動してから少しずつ実施した、OpenTelemetryを用いた計装について説明します。 なお、本記事はSansan Advent Calendar 2023の5日目の記事です。 はじめに OpenTelemetryとの出会い 私がSREチームに異動したのは2023年4月で、それまではWebアプリケーション開発をやっていました。当時のSREチームはAPMツールの導入に動いているタイミングであり、チームに入る際、前提知識として『オブザーバビリティ・エンジニアリング』(以降「書籍」と呼称)をお勧めされたことが出会いでした。 www.oreilly.co.jp 一言で言うなら、書籍を読んで私は

                                                                    Advent Calendar: OpenTelemetryの計装をやってみた話 - Sansan Tech Blog
                                                                  • Webアクセシビリティを考慮したチェックボックス・ラジオボタン・セレクトボックス・タブ・アコーディオンの実装 | Will Style Inc.|神戸にあるウェブ制作会社

                                                                    セレクトボックスはセレクト要素自体の背景にSVGでアイコンを配置することでwrapすることなくプルダウンアイコンを表示できます。 また、こちらもフォーカスした時にoutlineをbox-shadowで表現しています。 multipleの時はheight:autoにし、プルダウンアイコンを非表示にしています。 .c-select{ &:focus{ border-color:rgba($select-focus-color,.3); outline: none; box-shadow: 0 0 0 3px rgba($select-focus-color,.2); } &:disabled{ background-color: #eee; cursor:not-allowed; } &[multiple]{ height: auto; background-image: none; padd

                                                                      Webアクセシビリティを考慮したチェックボックス・ラジオボタン・セレクトボックス・タブ・アコーディオンの実装 | Will Style Inc.|神戸にあるウェブ制作会社
                                                                    • Building A Dynamic Header With Intersection Observer — Smashing Magazine

                                                                      Have you ever needed to build a UI where some component on the page needs to respond to elements as they’re scrolled to a certain threshold within the viewport — or perhaps in and out of the viewport itself? In JavaScript, attaching an event listener to constantly fire a callback on scroll can be performance-intensive, and if used unwisely, can make for a sluggish user experience. But there is a b

                                                                        Building A Dynamic Header With Intersection Observer — Smashing Magazine
                                                                      • 枠のサイズに応じて中のフォントサイズを自動調整する方法 - bravesoft

                                                                        みなさまこんにちは! Advent Calendar 4日目ということで、今回Webに関するネタをご紹介します。 フロントエンド実装のときに、枠内にメッセージを収めるためにみなさまはどうしていますか? 完全にハードコーディングであれば文字が枠に収まるように調整すればいいですが、 最近は動的にデータを取得することが当たり前となり、それに応じていろいろ調整しなければなりません。 しかし、レイアウトやデザインの都合上、枠のサイズを変えたくない・・・・・・ そのために枠のサイズを固定にする場合も多いと思います。 短文であれば、このようにおさまりますね! しかし、長文だった場合・・・・・・ このようにはみだしてしまいますね! 例になっている私のお寿司?への思いも、これでは正しく伝えることができませんね(?) こうならないようにどうすべきでしょうか? 1.ぶった切る overflow: hidden;

                                                                          枠のサイズに応じて中のフォントサイズを自動調整する方法 - bravesoft
                                                                        • Templating in HTML

                                                                          After a nice discussion on Twitter following a recent article from Manuel Matuzović, I thought it would be worth writing some quick thoughts here. Today, we have a quick look at the <template> element and how it can come in handy. So to put it simply, the <template> HTML element is intended to store HTML that is not yet used. The element itself and all its content are invisible, so it can be basic

                                                                            Templating in HTML
                                                                          • 【感動】 "まじん式" HTMLスライド生成プロンプトを試してほしい!|まじん

                                                                            こんにちは、まじんです。 「【神回】Googleスライドが一瞬で完成する"奇跡"のプロンプト教えます」のアプローチにたどり着く前に、HTML形式のスライド作成を研究していた時期がありました。今回はその内容をご紹介します。 実務で活躍するのはやっぱりGoogleスライド。 HTML版は使いどころを選ぶものの、かなりユニークでお気に入りです(笑) 一体、どんなスライドが出来上がるのか…。 Geminiツアーへ出かけましょう! 【プロンプトの使い方】すでにプロンプトがセットされたGemを使うことを前提に解説します。 まじん式は文字数が多めで、今回も4~5万字ありますが、無料版のGeminiでも、プロンプトをMDファイルにして「知識」として添付すれば使えます! 「MDファイルってなに?」という方はGeminiに聞いてみて。① スライドの元ネタを用意するGoogleスライド同様、素材はなんでも構いま

                                                                              【感動】 "まじん式" HTMLスライド生成プロンプトを試してほしい!|まじん
                                                                            • [HTML5] カメラをJSで操作しフォトフレーム付き写真を撮影する - ねこの足跡R

                                                                              以前、JavaScriptでカメラを操作し写真を撮影するサンプルコードを作成しましたが、今回はそこにフォトフレームを合成してみたいと思います。 プリクラやスマホアプリでよくある見かけるやつですね。撮影した画像をダウンロードすることもできます。 HTML5カメラ(フォトフレーム付き版) 実行例 ソースコード 解説 大まかな原理 複数Canvasの合成 Canvasのダウンロード 素材 参考ページ HTML5カメラ(フォトフレーム付き版) 実行例 以下のページから実際にサンプルを実行できます。 miku3.net PC用Webブラウザ専用です。スマホでの動作は考慮していません。 前回と同様に初回のアクセス時にWebブラウザから、このサイトにカメラの操作を許可して良いか聞かれますので「許可」ボタンをクリックしてください。「ブロック」ボタンを押すと設定を変更するのにメニューの少し深いところに潜る必

                                                                                [HTML5] カメラをJSで操作しフォトフレーム付き写真を撮影する - ねこの足跡R
                                                                              • Building interactive web pages with Guile Hoot — Spritely Institute

                                                                                Building interactive web pages with Guile HootDave Thompson — November 30, 2023 A question we frequently hear in discussions about WebAssembly (Wasm) is: "Can Wasm call the DOM (Document Object Model) API?" The answer is: Yes, thanks to Wasm Garbage Collection! In this post, we will use Guile Hoot (our Scheme to Wasm compiler) to demonstrate how a language that compiles to Wasm GC can be used to i

                                                                                  Building interactive web pages with Guile Hoot — Spritely Institute
                                                                                • JavaScriptによるZ80エミュレータでの「手抜き」回転行列 - Qiita

                                                                                  3EB0 LD A,B0H 84 ADD A,H D660 SUB A,60H D8 RET C 1F RRA 5F LD E,A 9F SBC A,A E60F AND A,0FH 3C INC A 47 LD B,A 3ECE LD A,CEH 92 SUB A,D D69C SUB A,9CH D8 RET C CB47 BIT 0,A 2802 JR Z,+4 CB20 SLA B CB4F BIT 1,A 2804 JR Z,+6 CB20 SLA B CB20 SLA B E67C AND A,7CH 57 LD D,A CB22 SLA D 0F RRCA 0F RRCA 1F RRA 67 LD H,A 9F SBC A,A E680 AND A,80H 92 SUB A,D 6F LD L,A 3001 JR NC,+3 25 DEC H 16F3 LD D,F3H 19

                                                                                    JavaScriptによるZ80エミュレータでの「手抜き」回転行列 - Qiita