123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374 |
- // Licensed under a BSD license. See license.html for license
- 'use strict';
- /* global jQuery */
- (function($){
- function getQueryParams() {
- const params = {};
- if (window.location.search) {
- window.location.search.substring(1).split('&').forEach(function(pair) {
- const keyValue = pair.split('=').map(function(kv) {
- return decodeURIComponent(kv);
- });
- params[keyValue[0]] = keyValue[1];
- });
- }
- return params;
- }
- $(document).ready(function($){
- const supportedLangs = {
- 'en': true,
- 'zh': true,
- };
- function insertLang(codeKeywordLinks) {
- const lang = document.documentElement.lang.substr(0, 2).toLowerCase();
- const langPart = `#api/${supportedLangs[lang] ? lang : 'en'}/`;
- const langAddedLinks = {};
- for (const [keyword, url] of Object.entries(codeKeywordLinks)) {
- langAddedLinks[keyword] = url.replace('#api/', langPart);
- }
- return langAddedLinks;
- }
- const codeKeywordLinks = insertLang({
- AnimationAction: 'https://threejs.org/docs/#api/animation/AnimationAction',
- AnimationClip: 'https://threejs.org/docs/#api/animation/AnimationClip',
- AnimationMixer: 'https://threejs.org/docs/#api/animation/AnimationMixer',
- AnimationObjectGroup: 'https://threejs.org/docs/#api/animation/AnimationObjectGroup',
- AnimationUtils: 'https://threejs.org/docs/#api/animation/AnimationUtils',
- KeyframeTrack: 'https://threejs.org/docs/#api/animation/KeyframeTrack',
- PropertyBinding: 'https://threejs.org/docs/#api/animation/PropertyBinding',
- PropertyMixer: 'https://threejs.org/docs/#api/animation/PropertyMixer',
- BooleanKeyframeTrack: 'https://threejs.org/docs/#api/animation/tracks/BooleanKeyframeTrack',
- ColorKeyframeTrack: 'https://threejs.org/docs/#api/animation/tracks/ColorKeyframeTrack',
- NumberKeyframeTrack: 'https://threejs.org/docs/#api/animation/tracks/NumberKeyframeTrack',
- QuaternionKeyframeTrack: 'https://threejs.org/docs/#api/animation/tracks/QuaternionKeyframeTrack',
- StringKeyframeTrack: 'https://threejs.org/docs/#api/animation/tracks/StringKeyframeTrack',
- VectorKeyframeTrack: 'https://threejs.org/docs/#api/animation/tracks/VectorKeyframeTrack',
- Audio: 'https://threejs.org/docs/#api/audio/Audio',
- AudioAnalyser: 'https://threejs.org/docs/#api/audio/AudioAnalyser',
- AudioContext: 'https://threejs.org/docs/#api/audio/AudioContext',
- AudioListener: 'https://threejs.org/docs/#api/audio/AudioListener',
- PositionalAudio: 'https://threejs.org/docs/#api/audio/PositionalAudio',
- ArrayCamera: 'https://threejs.org/docs/#api/cameras/ArrayCamera',
- Camera: 'https://threejs.org/docs/#api/cameras/Camera',
- CubeCamera: 'https://threejs.org/docs/#api/cameras/CubeCamera',
- OrthographicCamera: 'https://threejs.org/docs/#api/cameras/OrthographicCamera',
- PerspectiveCamera: 'https://threejs.org/docs/#api/cameras/PerspectiveCamera',
- StereoCamera: 'https://threejs.org/docs/#api/cameras/StereoCamera',
- Animation: 'https://threejs.org/docs/#api/constants/Animation',
- Core: 'https://threejs.org/docs/#api/constants/Core',
- CustomBlendingEquation: 'https://threejs.org/docs/#api/constants/CustomBlendingEquations',
- DrawModes: 'https://threejs.org/docs/#api/constants/DrawModes',
- Materials: 'https://threejs.org/docs/#api/constants/Materials',
- Renderer: 'https://threejs.org/docs/#api/constants/Renderer',
- Textures: 'https://threejs.org/docs/#api/constants/Textures',
- BufferAttribute: 'https://threejs.org/docs/#api/core/BufferAttribute',
- BufferGeometry: 'https://threejs.org/docs/#api/core/BufferGeometry',
- Clock: 'https://threejs.org/docs/#api/core/Clock',
- DirectGeometry: 'https://threejs.org/docs/#api/core/DirectGeometry',
- EventDispatcher: 'https://threejs.org/docs/#api/core/EventDispatcher',
- Face3: 'https://threejs.org/docs/#api/core/Face3',
- Geometry: 'https://threejs.org/docs/#api/core/Geometry',
- InstancedBufferAttribute: 'https://threejs.org/docs/#api/core/InstancedBufferAttribute',
- InstancedBufferGeometry: 'https://threejs.org/docs/#api/core/InstancedBufferGeometry',
- InstancedInterleavedBuffer: 'https://threejs.org/docs/#api/core/InstancedInterleavedBuffer',
- InterleavedBuffer: 'https://threejs.org/docs/#api/core/InterleavedBuffer',
- InterleavedBufferAttribute: 'https://threejs.org/docs/#api/core/InterleavedBufferAttribute',
- Layers: 'https://threejs.org/docs/#api/core/Layers',
- Object3D: 'https://threejs.org/docs/#api/core/Object3D',
- Raycaster: 'https://threejs.org/docs/#api/core/Raycaster',
- Uniform: 'https://threejs.org/docs/#api/core/Uniform',
- BufferAttributeTypes: 'https://threejs.org/docs/#api/core/bufferAttributeTypes/BufferAttributeTypes',
- Earcut: 'https://threejs.org/docs/#api/extras/Earcut',
- ShapeUtils: 'https://threejs.org/docs/#api/extras/ShapeUtils',
- Curve: 'https://threejs.org/docs/#api/extras/core/Curve',
- CurvePath: 'https://threejs.org/docs/#api/extras/core/CurvePath',
- Font: 'https://threejs.org/docs/#api/extras/core/Font',
- Interpolations: 'https://threejs.org/docs/#api/extras/core/Interpolations',
- Path: 'https://threejs.org/docs/#api/extras/core/Path',
- Shape: 'https://threejs.org/docs/#api/extras/core/Shape',
- ShapePath: 'https://threejs.org/docs/#api/extras/core/ShapePath',
- ArcCurve: 'https://threejs.org/docs/#api/extras/curves/ArcCurve',
- CatmullRomCurve3: 'https://threejs.org/docs/#api/extras/curves/CatmullRomCurve3',
- CubicBezierCurve: 'https://threejs.org/docs/#api/extras/curves/CubicBezierCurve',
- CubicBezierCurve3: 'https://threejs.org/docs/#api/extras/curves/CubicBezierCurve3',
- EllipseCurve: 'https://threejs.org/docs/#api/extras/curves/EllipseCurve',
- LineCurve: 'https://threejs.org/docs/#api/extras/curves/LineCurve',
- LineCurve3: 'https://threejs.org/docs/#api/extras/curves/LineCurve3',
- QuadraticBezierCurve: 'https://threejs.org/docs/#api/extras/curves/QuadraticBezierCurve',
- QuadraticBezierCurve3: 'https://threejs.org/docs/#api/extras/curves/QuadraticBezierCurve3',
- SplineCurve: 'https://threejs.org/docs/#api/extras/curves/SplineCurve',
- ImmediateRenderObject: 'https://threejs.org/docs/#api/extras/objects/ImmediateRenderObject',
- BoxBufferGeometry: 'https://threejs.org/docs/#api/geometries/BoxBufferGeometry',
- BoxGeometry: 'https://threejs.org/docs/#api/geometries/BoxGeometry',
- CircleBufferGeometry: 'https://threejs.org/docs/#api/geometries/CircleBufferGeometry',
- CircleGeometry: 'https://threejs.org/docs/#api/geometries/CircleGeometry',
- ConeBufferGeometry: 'https://threejs.org/docs/#api/geometries/ConeBufferGeometry',
- ConeGeometry: 'https://threejs.org/docs/#api/geometries/ConeGeometry',
- CylinderBufferGeometry: 'https://threejs.org/docs/#api/geometries/CylinderBufferGeometry',
- CylinderGeometry: 'https://threejs.org/docs/#api/geometries/CylinderGeometry',
- DodecahedronBufferGeometry: 'https://threejs.org/docs/#api/geometries/DodecahedronBufferGeometry',
- DodecahedronGeometry: 'https://threejs.org/docs/#api/geometries/DodecahedronGeometry',
- EdgesGeometry: 'https://threejs.org/docs/#api/geometries/EdgesGeometry',
- ExtrudeBufferGeometry: 'https://threejs.org/docs/#api/geometries/ExtrudeBufferGeometry',
- ExtrudeGeometry: 'https://threejs.org/docs/#api/geometries/ExtrudeGeometry',
- IcosahedronBufferGeometry: 'https://threejs.org/docs/#api/geometries/IcosahedronBufferGeometry',
- IcosahedronGeometry: 'https://threejs.org/docs/#api/geometries/IcosahedronGeometry',
- LatheBufferGeometry: 'https://threejs.org/docs/#api/geometries/LatheBufferGeometry',
- LatheGeometry: 'https://threejs.org/docs/#api/geometries/LatheGeometry',
- OctahedronBufferGeometry: 'https://threejs.org/docs/#api/geometries/OctahedronBufferGeometry',
- OctahedronGeometry: 'https://threejs.org/docs/#api/geometries/OctahedronGeometry',
- ParametricBufferGeometry: 'https://threejs.org/docs/#api/geometries/ParametricBufferGeometry',
- ParametricGeometry: 'https://threejs.org/docs/#api/geometries/ParametricGeometry',
- PlaneBufferGeometry: 'https://threejs.org/docs/#api/geometries/PlaneBufferGeometry',
- PlaneGeometry: 'https://threejs.org/docs/#api/geometries/PlaneGeometry',
- PolyhedronBufferGeometry: 'https://threejs.org/docs/#api/geometries/PolyhedronBufferGeometry',
- PolyhedronGeometry: 'https://threejs.org/docs/#api/geometries/PolyhedronGeometry',
- RingBufferGeometry: 'https://threejs.org/docs/#api/geometries/RingBufferGeometry',
- RingGeometry: 'https://threejs.org/docs/#api/geometries/RingGeometry',
- ShapeBufferGeometry: 'https://threejs.org/docs/#api/geometries/ShapeBufferGeometry',
- ShapeGeometry: 'https://threejs.org/docs/#api/geometries/ShapeGeometry',
- SphereBufferGeometry: 'https://threejs.org/docs/#api/geometries/SphereBufferGeometry',
- SphereGeometry: 'https://threejs.org/docs/#api/geometries/SphereGeometry',
- TetrahedronBufferGeometry: 'https://threejs.org/docs/#api/geometries/TetrahedronBufferGeometry',
- TetrahedronGeometry: 'https://threejs.org/docs/#api/geometries/TetrahedronGeometry',
- TextBufferGeometry: 'https://threejs.org/docs/#api/geometries/TextBufferGeometry',
- TextGeometry: 'https://threejs.org/docs/#api/geometries/TextGeometry',
- TorusBufferGeometry: 'https://threejs.org/docs/#api/geometries/TorusBufferGeometry',
- TorusGeometry: 'https://threejs.org/docs/#api/geometries/TorusGeometry',
- TorusKnotBufferGeometry: 'https://threejs.org/docs/#api/geometries/TorusKnotBufferGeometry',
- TorusKnotGeometry: 'https://threejs.org/docs/#api/geometries/TorusKnotGeometry',
- TubeBufferGeometry: 'https://threejs.org/docs/#api/geometries/TubeBufferGeometry',
- TubeGeometry: 'https://threejs.org/docs/#api/geometries/TubeGeometry',
- WireframeGeometry: 'https://threejs.org/docs/#api/geometries/WireframeGeometry',
- ArrowHelper: 'https://threejs.org/docs/#api/helpers/ArrowHelper',
- AxesHelper: 'https://threejs.org/docs/#api/helpers/AxesHelper',
- BoxHelper: 'https://threejs.org/docs/#api/helpers/BoxHelper',
- Box3Helper: 'https://threejs.org/docs/#api/helpers/Box3Helper',
- CameraHelper: 'https://threejs.org/docs/#api/helpers/CameraHelper',
- DirectionalLightHelper: 'https://threejs.org/docs/#api/helpers/DirectionalLightHelper',
- FaceNormalsHelper: 'https://threejs.org/docs/#api/helpers/FaceNormalsHelper',
- GridHelper: 'https://threejs.org/docs/#api/helpers/GridHelper',
- PolarGridHelper: 'https://threejs.org/docs/#api/helpers/PolarGridHelper',
- HemisphereLightHelper: 'https://threejs.org/docs/#api/helpers/HemisphereLightHelper',
- PlaneHelper: 'https://threejs.org/docs/#api/helpers/PlaneHelper',
- PointLightHelper: 'https://threejs.org/docs/#api/helpers/PointLightHelper',
- RectAreaLightHelper: 'https://threejs.org/docs/#api/helpers/RectAreaLightHelper',
- SkeletonHelper: 'https://threejs.org/docs/#api/helpers/SkeletonHelper',
- SpotLightHelper: 'https://threejs.org/docs/#api/helpers/SpotLightHelper',
- VertexNormalsHelper: 'https://threejs.org/docs/#api/helpers/VertexNormalsHelper',
- AmbientLight: 'https://threejs.org/docs/#api/lights/AmbientLight',
- DirectionalLight: 'https://threejs.org/docs/#api/lights/DirectionalLight',
- HemisphereLight: 'https://threejs.org/docs/#api/lights/HemisphereLight',
- Light: 'https://threejs.org/docs/#api/lights/Light',
- PointLight: 'https://threejs.org/docs/#api/lights/PointLight',
- RectAreaLight: 'https://threejs.org/docs/#api/lights/RectAreaLight',
- SpotLight: 'https://threejs.org/docs/#api/lights/SpotLight',
- DirectionalLightShadow: 'https://threejs.org/docs/#api/lights/shadows/DirectionalLightShadow',
- LightShadow: 'https://threejs.org/docs/#api/lights/shadows/LightShadow',
- SpotLightShadow: 'https://threejs.org/docs/#api/lights/shadows/SpotLightShadow',
- AnimationLoader: 'https://threejs.org/docs/#api/loaders/AnimationLoader',
- AudioLoader: 'https://threejs.org/docs/#api/loaders/AudioLoader',
- BufferGeometryLoader: 'https://threejs.org/docs/#api/loaders/BufferGeometryLoader',
- Cache: 'https://threejs.org/docs/#api/loaders/Cache',
- CompressedTextureLoader: 'https://threejs.org/docs/#api/loaders/CompressedTextureLoader',
- CubeTextureLoader: 'https://threejs.org/docs/#api/loaders/CubeTextureLoader',
- DataTextureLoader: 'https://threejs.org/docs/#api/loaders/DataTextureLoader',
- FileLoader: 'https://threejs.org/docs/#api/loaders/FileLoader',
- FontLoader: 'https://threejs.org/docs/#api/loaders/FontLoader',
- ImageBitmapLoader: 'https://threejs.org/docs/#api/loaders/ImageBitmapLoader',
- ImageLoader: 'https://threejs.org/docs/#api/loaders/ImageLoader',
- JSONLoader: 'https://threejs.org/docs/#api/loaders/JSONLoader',
- Loader: 'https://threejs.org/docs/#api/loaders/Loader',
- LoaderUtils: 'https://threejs.org/docs/#api/loaders/LoaderUtils',
- MaterialLoader: 'https://threejs.org/docs/#api/loaders/MaterialLoader',
- ObjectLoader: 'https://threejs.org/docs/#api/loaders/ObjectLoader',
- TextureLoader: 'https://threejs.org/docs/#api/loaders/TextureLoader',
- DefaultLoadingManager: 'https://threejs.org/docs/#api/loaders/managers/DefaultLoadingManager',
- LoadingManager: 'https://threejs.org/docs/#api/loaders/managers/LoadingManager',
- LineBasicMaterial: 'https://threejs.org/docs/#api/materials/LineBasicMaterial',
- LineDashedMaterial: 'https://threejs.org/docs/#api/materials/LineDashedMaterial',
- Material: 'https://threejs.org/docs/#api/materials/Material',
- MeshBasicMaterial: 'https://threejs.org/docs/#api/materials/MeshBasicMaterial',
- MeshDepthMaterial: 'https://threejs.org/docs/#api/materials/MeshDepthMaterial',
- MeshLambertMaterial: 'https://threejs.org/docs/#api/materials/MeshLambertMaterial',
- MeshNormalMaterial: 'https://threejs.org/docs/#api/materials/MeshNormalMaterial',
- MeshPhongMaterial: 'https://threejs.org/docs/#api/materials/MeshPhongMaterial',
- MeshPhysicalMaterial: 'https://threejs.org/docs/#api/materials/MeshPhysicalMaterial',
- MeshStandardMaterial: 'https://threejs.org/docs/#api/materials/MeshStandardMaterial',
- MeshToonMaterial: 'https://threejs.org/docs/#api/materials/MeshToonMaterial',
- PointsMaterial: 'https://threejs.org/docs/#api/materials/PointsMaterial',
- RawShaderMaterial: 'https://threejs.org/docs/#api/materials/RawShaderMaterial',
- ShaderMaterial: 'https://threejs.org/docs/#api/materials/ShaderMaterial',
- ShadowMaterial: 'https://threejs.org/docs/#api/materials/ShadowMaterial',
- SpriteMaterial: 'https://threejs.org/docs/#api/materials/SpriteMaterial',
- Box2: 'https://threejs.org/docs/#api/math/Box2',
- Box3: 'https://threejs.org/docs/#api/math/Box3',
- Color: 'https://threejs.org/docs/#api/math/Color',
- Cylindrical: 'https://threejs.org/docs/#api/math/Cylindrical',
- Euler: 'https://threejs.org/docs/#api/math/Euler',
- Frustum: 'https://threejs.org/docs/#api/math/Frustum',
- Interpolant: 'https://threejs.org/docs/#api/math/Interpolant',
- Line3: 'https://threejs.org/docs/#api/math/Line3',
- Math: 'https://threejs.org/docs/#api/math/Math',
- Matrix3: 'https://threejs.org/docs/#api/math/Matrix3',
- Matrix4: 'https://threejs.org/docs/#api/math/Matrix4',
- Plane: 'https://threejs.org/docs/#api/math/Plane',
- Quaternion: 'https://threejs.org/docs/#api/math/Quaternion',
- Ray: 'https://threejs.org/docs/#api/math/Ray',
- Sphere: 'https://threejs.org/docs/#api/math/Sphere',
- Spherical: 'https://threejs.org/docs/#api/math/Spherical',
- Triangle: 'https://threejs.org/docs/#api/math/Triangle',
- Vector2: 'https://threejs.org/docs/#api/math/Vector2',
- Vector3: 'https://threejs.org/docs/#api/math/Vector3',
- Vector4: 'https://threejs.org/docs/#api/math/Vector4',
- CubicInterpolant: 'https://threejs.org/docs/#api/math/interpolants/CubicInterpolant',
- DiscreteInterpolant: 'https://threejs.org/docs/#api/math/interpolants/DiscreteInterpolant',
- LinearInterpolant: 'https://threejs.org/docs/#api/math/interpolants/LinearInterpolant',
- QuaternionLinearInterpolant: 'https://threejs.org/docs/#api/math/interpolants/QuaternionLinearInterpolant',
- Bone: 'https://threejs.org/docs/#api/objects/Bone',
- Group: 'https://threejs.org/docs/#api/objects/Group',
- Line: 'https://threejs.org/docs/#api/objects/Line',
- LineLoop: 'https://threejs.org/docs/#api/objects/LineLoop',
- LineSegments: 'https://threejs.org/docs/#api/objects/LineSegments',
- LOD: 'https://threejs.org/docs/#api/objects/LOD',
- Mesh: 'https://threejs.org/docs/#api/objects/Mesh',
- Points: 'https://threejs.org/docs/#api/objects/Points',
- Skeleton: 'https://threejs.org/docs/#api/objects/Skeleton',
- SkinnedMesh: 'https://threejs.org/docs/#api/objects/SkinnedMesh',
- Sprite: 'https://threejs.org/docs/#api/objects/Sprite',
- WebGLRenderer: 'https://threejs.org/docs/#api/renderers/WebGLRenderer',
- WebGLRenderTarget: 'https://threejs.org/docs/#api/renderers/WebGLRenderTarget',
- WebGLRenderTargetCube: 'https://threejs.org/docs/#api/renderers/WebGLRenderTargetCube',
- ShaderChunk: 'https://threejs.org/docs/#api/renderers/shaders/ShaderChunk',
- ShaderLib: 'https://threejs.org/docs/#api/renderers/shaders/ShaderLib',
- UniformsLib: 'https://threejs.org/docs/#api/renderers/shaders/UniformsLib',
- UniformsUtils: 'https://threejs.org/docs/#api/renderers/shaders/UniformsUtils',
- Fog: 'https://threejs.org/docs/#api/scenes/Fog',
- FogExp2: 'https://threejs.org/docs/#api/scenes/FogExp2',
- Scene: 'https://threejs.org/docs/#api/scenes/Scene',
- CanvasTexture: 'https://threejs.org/docs/#api/textures/CanvasTexture',
- CompressedTexture: 'https://threejs.org/docs/#api/textures/CompressedTexture',
- CubeTexture: 'https://threejs.org/docs/#api/textures/CubeTexture',
- DataTexture: 'https://threejs.org/docs/#api/textures/DataTexture',
- DepthTexture: 'https://threejs.org/docs/#api/textures/DepthTexture',
- Texture: 'https://threejs.org/docs/#api/textures/Texture',
- VideoTexture: 'https://threejs.org/docs/#api/textures/VideoTexture',
- CCDIKSolver: 'https://threejs.org/docs/#examples/animations/CCDIKSolver',
- MMDAnimationHelper: 'https://threejs.org/docs/#examples/animations/MMDAnimationHelper',
- MMDPhysics: 'https://threejs.org/docs/#examples/animations/MMDPhysics',
- OrbitControls: 'https://threejs.org/docs/#examples/controls/OrbitControls',
- ConvexBufferGeometry: 'https://threejs.org/docs/#examples/geometries/ConvexBufferGeometry',
- ConvexGeometry: 'https://threejs.org/docs/#examples/geometries/ConvexGeometry',
- DecalGeometry: 'https://threejs.org/docs/#examples/geometries/DecalGeometry',
- BabylonLoader: 'https://threejs.org/docs/#examples/loaders/BabylonLoader',
- GLTFLoader: 'https://threejs.org/docs/#examples/loaders/GLTFLoader',
- MMDLoader: 'https://threejs.org/docs/#examples/loaders/MMDLoader',
- MTLLoader: 'https://threejs.org/docs/#examples/loaders/MTLLoader',
- OBJLoader: 'https://threejs.org/docs/#examples/loaders/OBJLoader',
- OBJLoader2: 'https://threejs.org/docs/#examples/loaders/OBJLoader2',
- LoaderSupport: 'https://threejs.org/docs/#examples/loaders/LoaderSupport',
- PCDLoader: 'https://threejs.org/docs/#examples/loaders/PCDLoader',
- PDBLoader: 'https://threejs.org/docs/#examples/loaders/PDBLoader',
- SVGLoader: 'https://threejs.org/docs/#examples/loaders/SVGLoader',
- TGALoader: 'https://threejs.org/docs/#examples/loaders/TGALoader',
- PRWMLoader: 'https://threejs.org/docs/#examples/loaders/PRWMLoader',
- Lensflare: 'https://threejs.org/docs/#examples/objects/Lensflare',
- GLTFExporter: 'https://threejs.org/docs/#examples/exporters/GLTFExporter',
- });
- function getKeywordLink(keyword) {
- const dotNdx = keyword.indexOf('.');
- if (dotNdx) {
- const before = keyword.substring(0, dotNdx);
- const link = codeKeywordLinks[before];
- if (link) {
- return `${link}.${keyword.substr(dotNdx + 1)}`;
- }
- }
- return keyword.startsWith('THREE.')
- ? codeKeywordLinks[keyword.substring(6)]
- : codeKeywordLinks[keyword];
- }
- $('code').filter(function() {
- return getKeywordLink(this.textContent) &&
- this.parentElement.nodeName !== 'A';
- }).wrap(function() {
- const a = document.createElement('a');
- a.href = getKeywordLink(this.textContent);
- return a;
- });
- const methodPropertyRE = /^(\w+).(\w+)$/;
- const classRE = /^(\w+)$/;
- $('a').each(function() {
- const href = this.getAttribute('href');
- const m = methodPropertyRE.exec(href);
- if (m) {
- const codeKeywordLink = getKeywordLink(m[1]);
- if (codeKeywordLink) {
- this.setAttribute('href', `${codeKeywordLink}#${m[2]}`);
- }
- } else if (classRE.test(href)) {
- const codeKeywordLink = getKeywordLink(href);
- if (codeKeywordLink) {
- this.setAttribute('href', codeKeywordLink);
- }
- }
- });
- const linkImgs = function(bigHref) {
- return function() {
- const a = document.createElement('a');
- a.href = bigHref;
- a.title = this.alt;
- a.className = this.className;
- a.setAttribute('align', this.align);
- this.setAttribute('align', '');
- this.className = '';
- this.style.border = '0px';
- return a;
- };
- };
- const linkSmallImgs = function(ext) {
- return function() {
- const src = this.src;
- return linkImgs(src.substr(0, src.length - 7) + ext);
- };
- };
- const linkBigImgs = function() {
- const src = $(this).attr('big');
- return linkImgs(src);
- };
- $('img[big$=".jpg"]').wrap(linkBigImgs);
- $('img[src$="-sm.jpg"]').wrap(linkSmallImgs('.jpg'));
- $('img[src$="-sm.gif"]').wrap(linkSmallImgs('.gif'));
- $('img[src$="-sm.png"]').wrap(linkSmallImgs('.png'));
- $('pre>code')
- .unwrap()
- .replaceWith(function() {
- return $('<pre class="prettyprint showlinemods">' + this.innerHTML + '</pre>');
- });
- if (window.prettyPrint) {
- window.prettyPrint();
- }
- const params = getQueryParams();
- if (params.doubleSpace || params.doublespace) {
- document.body.className = document.body.className + ' doubleSpace';
- }
- $('.language').on('change', function() {
- window.location.href = this.value;
- });
- });
- }(jQuery));
- // ios needs this to allow touch events in an iframe
- window.addEventListener('touchstart', {});
|