@extends('layouts.app') @section('title', '無障礙掃描') @section('content')

無障礙掃描

@if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif {{-- ══ 工具卡片 ══ --}}
Pa11y 已安裝
HTML CodeSniffer · axe-core · Headless Chrome
{{ array_sum(array_column($counts,'total')) }}
次掃描

使用 Headless Chrome 實際渲染網頁後進行無障礙分析,支援兩種引擎:
HTML CodeSniffer(嚴格 WCAG 對應)· axe-core(Deque,業界標準)
支援 WCAG 2.x A / AA / AAA,可單頁或多頁爬蟲掃描。

@foreach(['WCAG 2.x','htmlcs','axe-core','多頁爬蟲','Headless Chrome'] as $tag) {{ $tag }} @endforeach
pa11y + html_codesniffer · Headless Chrome
{{-- ══ 掃描記錄列表 ══ --}}
@if($standardFilter) {{ $standardFilter }} @else @endif 掃描記錄
@if($search) @endif
@if($isAdmin) @endif @forelse($scans as $scan) @php $bt = $scan->summary['by_type'] ?? []; @endphp @if($isAdmin) @endif @empty @endforelse
目標網址 等級 引擎 狀態 E W N建立者時間
{{ $scan->project?->name ?? parse_url($scan->target_url, PHP_URL_HOST) }}
{{ Str::limit($scan->target_url, 60) }}
@php $stdColor = ['WCAG2A'=>'success','WCAG2AA'=>'primary','WCAG2AAA'=>'warning'][$scan->standard] ?? 'secondary'; @endphp {{ $scan->standardLabel() }} @php $runner = $scan->runner ?? 'htmlcs'; @endphp @if($runner === 'axe') axe-core @elseif($runner === 'lighthouse') Lighthouse @if(isset($scan->summary['lh_score'])) {{ $scan->summary['lh_score'] }}/100 @endif @else htmlcs @endif @if($scan->max_pages > 1) {{ $scan->pages_scanned ?? '—' }}/{{ $scan->max_pages }} @else 1 @endif @if($scan->status==='done') 完成 @elseif($scan->status==='running') 執行中 @elseif($scan->status==='failed') 失敗 @else 待執行 @endif {{ ($bt['error']??0) ?: '·' }} {{ ($bt['warning']??0) ?: '·' }} {{ ($bt['notice']??0) ?: '·' }}{{ $scan->creator?->name ?? '—' }}{{ $scan->created_at->format('m-d H:i') }}
@csrf @method('DELETE')
@if($search) 找不到「{{ $search }}」的掃描記錄 @else 尚無掃描記錄,請點選「新增掃描」開始 @endif
@endsection